View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000824||Ecere SDK||compiler||public||2013-04-24 05:20||2013-04-24 05:20|
|Summary||0000824: In MemoryGuard config, cannot compile List.ec without import "instance"|
|Description||As of daa244a0463d1dd97a42826cb44ff05278caf323 (installed, and building)|
Tested on ArchLinux 64, gcc 4.6. Same problem on Ubuntu 64.
Compiling List.ec in the memoryGuard config on Linux (not Windows) produces nonsense syntax errors.
The problem seems to be triggered by the extra MemInfo stuff inside instance.sym (i.e. the same ecc command pointing to the obj/debug.linux directory does not exhibit this behavior).
A work-around is to put import "instance" at the top of List.ec.
Another way is to temporarily copy the instance.sym over from obj/debug.linux while compiling List.ec.
|Additional Information||redj: may I suggest adding |
to List.ec and Map.ec and *commiting* so the problem is kept at bay until this issue can be resolved?
Well there's no need for the #ifdef really, an import "instance" won't hurt anything.
(The work around has been in place, so this is a minor issue).
The difference with MemoryGuard mode, is that instance.ec will import "Thread.ec"
The complete error log follows.
It seems that 'D' is not recognized as a typename.
../ecere/src/com/containers/List.ec:58:29: error: syntax error
../ecere/src/com/containers/List.ec:68:32: error: syntax error
../ecere/src/com/containers/List.ec:58:7: error: unresolved identifier D
../ecere/src/com/containers/List.ec:59:7: error: couldn't determine type of data
../ecere/src/com/containers/List.ec:59:7: error: couldn't determine type of delete data
../ecere/src/com/containers/List.ec:68:10: error: unresolved identifier D
../ecere/src/com/containers/List.ec:69:10: error: couldn't determine type of data
../ecere/src/com/containers/List.ec:69:10: error: couldn't determine type of delete data
../ecere/src/com/containers/List.ec:76:20: warning: not enough arguments for method ecere::com::Container::Find (1 given, expected 1)
../ecere/src/com/containers/List.ec:76:36: warning: incompatible expression value (LLT); expected ecere::com::Container
8 errors, 2 warnings
|Tags||No tags attached.|