Closed Bug 535696 Opened 15 years ago Closed 15 years ago

dehydra fails to build with gcc trunk as of 2009-12-17

Categories

(Developer Infrastructure :: Source Code Analysis, defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: aguertin+bugzilla, Unassigned)

Details

dehydra fails to build with gcc trunk as of 2009-12-17. Taras said on IRC that it's probably because of changes in gcc between 2009-11-20 (when it was known to work) and today.

The exact error is
/home/dolphinling/dxr/gcc/install/bin/g++ -Wp,-C -save-temps -DTREEHYDRA_CONVERT_JS -fpermissive -fshow-column -Wall -fPIC -DXP_UNIX -DIN_GCC -DPLUGIN_NO_POISON -DHAVE_CONFIG_H -I/home/dolphinling/dxr/gcc/install/lib/gcc/i686-pc-linux-gnu/4.5.0/plugin/include -I/home/dolphinling/dxr/spidermonkey/mozilla-central/js/src -I/home/dolphinling/dxr/spidermonkey/mozilla-central/js/src/build-release -I//home/dolphinling/local/include/js/   -fplugin=./gcc_dehydra.so -fplugin-arg-gcc_dehydra-=convert_tree.js gcc_cp_headers.h -o /dev/null
Dehydra didn't find required types needed to generate Treehydra
*** WARNING *** there are active plugins, do not report this as a bug unless you can reproduce it without enabling any plugins.
Event                            | Plugins
PLUGIN_FINISH_TYPE               | gcc_dehydra
PLUGIN_FINISH_UNIT               | gcc_dehydra
PLUGIN_CXX_CP_PRE_GENERICIZE     | gcc_dehydra
PLUGIN_FINISH                    | gcc_dehydra
PLUGIN_ATTRIBUTES                | gcc_dehydra
In file included from gcc_cp_headers.h:33:0:
/home/dolphinling/dxr/gcc/install/lib/gcc/i686-pc-linux-gnu/4.5.0/plugin/include/tree-iterator.h:117:51: internal compiler error: tree check: expected tree_list, have template_info in dehydra_attachTypeAttributes, at dehydra_types.c:52
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [treehydra_generated.c] Error 1
So far, I've narrowed the regression range down to gcc versions between 2009-11-20 and 2009-11-25. 

Also, with gcc from 2009-11-20, I've confirmed that the build proceeds past that point, but I do get a different error later on:
cc -MD -g3 -Wall -fPIC -DXP_UNIX -DIN_GCC -DPLUGIN_NO_POISON -DHAVE_CONFIG_H  -I/home/dolphinling/dxr/gcc/install-old/lib/gcc/i686-pc-linux-gnu/4.5.0/plugin/include -I/home/dolphinling/dxr/spidermonkey/mozilla-central/js/src -I/home/dolphinling/dxr/spidermonkey/mozilla-central/js/src/build-release -I//home/dolphinling/local/include/js/   -c treehydra_generated.c
treehydra_generated.c: In function ‘lazy_cp_binding_level’:
treehydra_generated.c:1298: error: ‘cp_binding_level’ undeclared (first use in this function)
treehydra_generated.c:1298: error: (Each undeclared identifier is reported only once
treehydra_generated.c:1298: error: for each function it appears in.)
treehydra_generated.c:1298: error: ‘topmost’ undeclared (first use in this function)
treehydra_generated.c:1298: error: expected expression before ‘)’ token
treehydra_generated.c: In function ‘lazy_ssa_use_operand_d’:
treehydra_generated.c:1924: error: ‘ssa_use_operand_d’ undeclared (first use in this function)
treehydra_generated.c:1924: error: ‘topmost’ undeclared (first use in this function)
treehydra_generated.c:1924: error: expected expression before ‘)’ token
treehydra_generated.c: In function ‘lazy_gimple_seq_node_d’:
treehydra_generated.c:2229: error: ‘gimple_seq_node_d’ undeclared (first use in this function)
treehydra_generated.c:2229: error: ‘topmost’ undeclared (first use in this function)
treehydra_generated.c:2229: error: expected expression before ‘)’ token
treehydra_generated.c: In function ‘lazy_basic_block_def’:
treehydra_generated.c:2333: error: ‘basic_block_def’ undeclared (first use in this function)
treehydra_generated.c:2333: error: ‘topmost’ undeclared (first use in this function)
treehydra_generated.c:2333: error: expected expression before ‘)’ token
treehydra_generated.c: In function ‘lazy_bitmap_element_def’:
treehydra_generated.c:2501: error: ‘bitmap_element_def’ undeclared (first use in this function)
treehydra_generated.c:2501: error: ‘topmost’ undeclared (first use in this function)
treehydra_generated.c:2501: error: expected expression before ‘)’ token
treehydra_generated.c: In function ‘lazy_ssa_operand_memory_d’:
treehydra_generated.c:2553: error: ‘ssa_operand_memory_d’ undeclared (first use in this function)
treehydra_generated.c:2553: error: ‘topmost’ undeclared (first use in this function)
treehydra_generated.c:2553: error: expected expression before ‘)’ token
treehydra_generated.c: In function ‘lazy_tree_statement_list_node’:
treehydra_generated.c:3073: error: ‘tree_statement_list_node’ undeclared (first use in this function)
treehydra_generated.c:3073: error: ‘topmost’ undeclared (first use in this function)
treehydra_generated.c:3073: error: expected expression before ‘)’ token
treehydra_generated.c: In function ‘lazy_cgraph_edge’:
treehydra_generated.c:3632: error: ‘topmost’ undeclared (first use in this function)
treehydra_generated.c:3632: error: expected expression before ‘)’ token
treehydra_generated.c: In function ‘lazy_cgraph_node’:
treehydra_generated.c:3768: error: ‘topmost’ undeclared (first use in this function)
treehydra_generated.c:3768: error: expected expression before ‘)’ token
make: *** [treehydra_generated.o] Error 1
Narrowed it down further to between 2009-11-22 and 2009-11-25. (Note, these are from putting those dates into --revision {}. They correspond to revisions 154422 and 154523)

Based on this, my guess is revision 154443 (http://gcc.gnu.org/viewcvs?view=revision&revision=154443).
Thanks for pointing out the exact change that broke me, saved me a few hours of hairpulling.

http://hg.mozilla.org/rewriting-and-analysis/dehydra/rev/232d3fa13545


Treehydra generation is broken again, so just ignore that build error. You can do make check_dehydra to make sure dehydra works.

I'm probably gonna give it another couple of weeks before I play catchup again on Treehydra. Let me know if you have any other problems or suggestions.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Product: Core → Firefox Build System
Product: Firefox Build System → Developer Infrastructure
You need to log in before you can comment on or make changes to this bug.