View Issue Details

IDProjectCategoryView StatusLast Update
0000316Ecere SDKcompilerpublic2014-08-08 18:17
Reporterjerome Assigned Tojerome  
PriorityimmediateSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Target Version0.44.10 64Fixed in Version0.44.10 64 
Summary0000316: Issues with opaque structure parameters
Descriptionimport "ecere"

Point dummy;

void TestPoint(struct Point v0)
{
   TestPoint(v0);
}

void Bla()
{
   TestPoint(Point { 0, 10 });
}
Additional Informationerror: incompatible type for argument 1 of 'TestPoint'


TestPoint(&__simpleStruct0);

* Shouldn't be adding reference operator here.
Tagsv0.44d2

Activities

jerome

2010-02-23 19:41

administrator   ~0000149

Last edited: 2010-02-23 19:41

Tao Example is broken!!!
--------------------------

struct InventoryItem
{
   int code;
   float price;
};
void FillItem(InventoryItem item)
{
   item.code = 1234;
   item.price = 45.0f;
}
void DontModifyItem(struct InventoryItem item)
{
   // This only modifies a local copy
   item.code = 1234;
   item.price = 45.0f;
}
void Test()
{
   InventoryItem item1 { };
   DontModifyItem(item1);
   // item1 still contain zero values
}

--------------------------------------
error: invalid type argument of '->' (have 'struct InventoryItem')
error: invalid type argument of '->' (have 'struct InventoryItem')
error: incompatible type for argument 1 of 'DontModifyItem'

jerome

2014-07-10 23:03

administrator   ~0001367

Both original issues seem fixed, but now the first example suffer from a missing topological edge causing warnings and an error. Fix so we can close this issue.

jerome

2014-07-10 23:19

administrator   ~0001368

The remaining topo edge issue was resolved by:
https://github.com/ecere/ecere-sdk/commit/d7fc5db067ba90852ed35fac4b15001a3e679092

Both the code in the description and Tao example in the note now build fine.

Issue History

Date Modified Username Field Change
2010-02-23 19:38 jerome New Issue
2010-02-23 19:41 jerome Note Added: 0000149
2010-02-23 19:41 jerome Assigned To => jerome
2010-02-23 19:41 jerome Priority normal => immediate
2010-02-23 19:41 jerome Reproducibility have not tried => always
2010-02-23 19:41 jerome Status new => assigned
2010-02-23 19:41 jerome Additional Information Updated
2010-02-23 19:41 jerome Note Edited: 0000149
2010-07-07 02:59 redj Target Version => 0.44d2
2010-07-07 04:10 redj Tag Attached: v0.44d2
2010-07-25 20:33 redj Relationship added child of 0000429
2010-07-26 19:10 thexa4 Target Version 0.44d2 => 0.44 draft 2
2012-03-08 15:43 redj Target Version old 0.44.pre2 => 0.45 Ginkakuji
2012-03-08 17:18 redj Relationship deleted child of 0000429
2012-03-29 07:50 redj Category => eC Compiling Tools
2012-03-29 07:50 redj Project @2@ => Ecere SDK
2013-04-24 03:57 jerome Target Version 0.45 Ginkakuji => 0.44.1 64
2013-04-24 20:22 jerome Assigned To jerome =>
2013-04-27 06:08 redj Status assigned => new
2014-07-10 23:02 jerome Assigned To => jerome
2014-07-10 23:02 jerome Status new => assigned
2014-07-10 23:02 jerome Target Version 0.44.12 Fixes => 0.44.10 64
2014-07-10 23:03 jerome Note Added: 0001367
2014-07-10 23:19 jerome Note Added: 0001368
2014-07-10 23:19 jerome Status assigned => resolved
2014-07-10 23:19 jerome Fixed in Version => 0.44.10 64
2014-07-10 23:19 jerome Resolution open => fixed
2014-08-08 18:17 jerome Status resolved => closed