Re: 4.0 and include statements
- Posted by mattlewis (admin) Jan 20, 2009
- 861 views
I do not understand why it makes such a difference if I use global symbols with Eu 4.0 and why it will consume so much memory when creating bigger sized applications, no matter if I see them as forward references or not. As the code of Eu 4.0 is far beyond my capabilities I cannot make any suggestion. But is it not possible to treat global symbols in include files without public or export the same way as with Eu 3.1.1?
The issue isn't really the scope of the symbols. You can still use global. The difference is whether files that use the symbols include the file that defined the symbol (or included a file that included the definition, etc). Basically, it's a sloppy programming practice that many (including me!) have indulged, and the new forward referencing (which has many tangible benefits) requires that we wait to resolve un-included global references until later.
The memory bloat is the parser remembering all of the places where this occurred. It's probably possible to improve this (and I'm fairly sure it will happen at some point), but the best solution (which will incur some cost in the transition) is to put in the missing include statements.
Matt