From: anonymous c. <nas...@ya...> - 2005-11-13 18:00:00
|
Frank, > > section mysection > > mysectionsize equ $ - section.mysection.start > > > > This will tell me section.mysection.start wasn't defined prior to its use... > > > > What's wrong? > > Dunno. I can confirm that it happens. I *think* you're doing everything > right. If I add the "-O" switch, the error message changes to "invalid > operand type". I suspect a bug. I'll pass this on to the developer's > list, and see if anyone has any ideas... The section.<name>.start label is defined by bin_define_section_labels() in outbin.c. However, that function isn't called until after the second pass has been completed -- see line 1227. As a result, with the traditional two passes, EQU can't find the label during the first pass. And since EQU's operand is a critical expression you get the "symbol `<name>` not defined before use" error. With additional passes you get the "invalid operand type" warning; it happens to be the first of the two in parser.c, in line 690. __________________________________ Yahoo! FareChase: Search multiple travel sites in one click. http://farechase.yahoo.com |