Re: eu4.0a2 error

new topic     » goto parent     » topic index » view thread      » older message » newer message
mattlewis said...
ChrisB said...

I suspect that in your case, the main program includes files which also include other files, and these files look for labels earlier in the chain. Sounds hideously complicated, but eu 4 no longer looks in these other include files, unless you specifically tell it to do so.

so at the top of layer.e, you now have to include files explicitly, which 3.xx would have accessed through the file that included layer.e

This is somewhat inaccurate. What you say is true for export or public symbols, but since this is code that runs on 3.1, I'll assume that they're all global, so they should be seen just fine in 4.0, although if the include statements aren't there, the resolution won't actually happen until the end of parsing. But it should still find them.

So Don may have found a real bug, but there's no way to know from what he's told us so far. Ideally, Don could post a minimal example that demonstrates the structure of his code and exhibits the bug. Something like:

-- post.exw 
global constant EditText13 = 0 
include label.e 
 
-- label.e 
? EditText13 -- cannot resolve this symbol! 

Then, we could reproduce the error, and create a fix (and a unit test, so it won't slip through again).

Matt

ChrisB and Matt,

I think I found the problem.

The Program is set up like this"

port.exw
include ListView2.ew
include newEntry.ew

I have EditText13 defined as global in port.exw, ListView2.ew and newEntry.ew.

These are not the same EditTexts they just have the same name. So I suppose I will have have to go back and remame all these EditTexts.

So why didn't this problem show up in the earlier version of Euphoria.

Don Cole

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu