Closed Bug 1166188 Opened 10 years ago Closed 10 years ago

DEBUG-only unions in TestCodeGen.webidl not generated in a B2G_DEBUG=1 b2g build

Categories

(Core :: DOM: Core & HTML, defect)

defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox41 --- affected

People

(Reporter: heycam, Unassigned)

Details

When trying to do a debug B2G build, by including B2G_DEBUG=1 in my .userconfig, I get these errors: In file included from ../TestExampleGenBinding.cpp:3:0: ../../../../gecko/dom/bindings/test/TestBindingHeader.h:597:25: error: 'LongOrBoolean' does not name a type ../../../../gecko/dom/bindings/test/TestBindingHeader.h:597:40: error: ISO C++ forbids declaration of 'arg' with no type [-fpermissive] ../../../../gecko/dom/bindings/test/TestBindingHeader.h:598:37: error: 'ObjectOrLongOrBoolean' does not name a type ../../../../gecko/dom/bindings/test/TestBindingHeader.h:598:60: error: ISO C++ forbids declaration of 'arg' with no type [-fpermissive] ... It looks like the generated UnionTypes.h doesn't have the relevant union classes (from within TestExampleGen.webidl's #ifdef DEBUG sections) declared in it.
Well, the obvious conclusion is that DEBUG is not defined when preprocessing TestCodeGen.webidl in this situation... Do you happen to know what $(DEFINES) ends up being in the makefile in this case?
I don't, but I happened to rebuild just now after clobbering both out/ and objdir-gecko/, and this time it worked, and the types are defined in UnionTypes.h.
Ah. So if you go from not-debug to debug without clobbering, I don't think our build system deals well...
I wonder if that was indeed my issue yesterday. Well, let's close this WORKSFORME and if it happens more reliably without going between debug and not-debug, I'll reopen.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → WORKSFORME
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.