include statement bugs
- Posted by Chris Bensler <bensler at nt.net> Oct 17, 2004
- 768 views
There is a demo to go along with this post, but it doesn't seem I can attach files. You can get the zip here: http://empire.iwireweb.com/forums/index.php?act=Attach&type=post&id=189 There are 2 problems. 1. backslash and forwardslash should work identically, with the behaviour that frontslash.ex demonstrates Using backslash, euphoria thinks that both lib1\test_include.e and lib2\test_include.e are the same file and completely ignores the second. Using \ is apparently supposed to be the expected behaviour. The fact that / works at all is considered a bug. This is why I so strongly opposed the 'bug fix' for / that RDS was going to do for v2.4 I use subfolders to help keep my projects more organized, and I have to say it works well. In fact, I consider it bad practice to put files directly into my include path. I use subfolders as much as possible. Win32lib would be easier to deal with, if it were distributed as a self contained subfolder. Instead it has to be placed directly in the include path, which combined with countless other libraries, begins to cause issues with 'filename clashing'. Another namespacing problem that has yet to come to a head. Euphoria basically doesn't allow the programmer to utilize the benefit of directory structure, to help organize our growing library archives. I will even go so far as to suggest that rds moves it's own official libraries to include/rds/* as example and incentive for others to do the same. 2. "lib1\test_include.e" fails Rob Szalay pointed it out to me. F:\empire\projects\include_test\backslash.ex:1 can't find lib1 est_include.e in F:\empire\projects\include_test or in f:\empire\include\rds;f:\my empire\include or in f:\empire\include include "lib1\test_include.e" as lib1 ^ Notice also, "can't find lib1 est_include.e". Chris Bensler Code is Alchemy