When you debug gccxml, it spawns another process to handle the actual compile step. You have to debug that spawned process. Use "--debug" (I think) to see the command line for the spawned process. Or look through the source code for gccxml's main to figure out how to grok the command line for the spawned process...<div>
<br class="webkit-block-placeholder"></div><div>Or, instead of debuggers/breakpoints, use good old-fashioned print statements to send some diagnostic output to stdout...</div><div><br class="webkit-block-placeholder"></div>
<div><br><br><div><span class="gmail_quote">On 2/10/08, <b class="gmail_sendername">Steve Vinoski</b> <<a href="mailto:vinoski@ieee.org">vinoski@ieee.org</a>> wrote:</span><blockquote class="gmail_quote" style="margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex">
Great, thanks. The code causing the internal error actually comes from<br>the Boost library, file boost/pending/integer_log2.hpp from Boost<br>1.34, and specifically this construct:<br><br>template <int p, int n><br>
struct max_pow2_less {<br> enum { c = 2*n < p };<br> static const int value = c ? (max_pow2_less< c*p, 2*c*n>::value) : n;<br>};<br><br>It's specifically the definition of the "value" static const int<br>
variable that causes the problem. Here's one possible workaround:<br><br>enum { c = 2*n < p, next_p = c*p, next_n = 2*c*n };<br>static const int value = c ? (max_pow2_less< next_p, next_n>::value) : n;<br><br>
I tried to put a breakpoint at tree.c:4582, indicated in the internal<br>compiler error message, but it never hit it.<br><br>Any further suggestions for how to proceed with tracking this down and<br>fixing it?<br><br>thanks,<br>
--steve<br><br>On 2/9/08, David Cole <<a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a>> wrote:<br>> When configuring with CMake, set CMAKE_BUILD_TYPE to Debug for a makefile<br>> based build. (Or if building with Visual Studio or Xcode, just build the<br>
> Debug configuration...)<br>><br>> HTH,<br>> Dave<br>><br>><br>><br>> On 2/9/08, Steve Vinoski <<a href="mailto:vinoski@ieee.org">vinoski@ieee.org</a>> wrote:<br>> ><br>> > Apologies if this has already been covered; I just joined the list and<br>
> > searched for this issue but didn't find anything.<br>> ><br>> > With gccxml 0.9.0 built against sources fresh out of cvs and running<br>> > against a gcc 4.2.2 compiler installation, I see this error with a<br>
> > number of files that compile fine with straight g++ 4.2.2:<br>> ><br>> > internal compiler error: tree check: expected integer_cst, have<br>> > lt_expr in tree_int_cst_sgn, at tree.c:4582<br>> ><br>
> > Has anyone else seen this? If not, any recommendations for debugging<br>> > it? Sending preprocessed output isn't possible. Are there instructions<br>> > available anywhere for building a debuggable gccxml?<br>
> ><br>> > thanks,<br>> > --steve<br>> > _______________________________________________<br>> > gccxml mailing list<br>> > <a href="mailto:gccxml@gccxml.org">gccxml@gccxml.org</a><br>> > <a href="http://www.gccxml.org/mailman/listinfo/gccxml">http://www.gccxml.org/mailman/listinfo/gccxml</a><br>
> ><br>><br>><br></blockquote></div><br> </div>