Greetings. I am running up against an interesting compiler bug whereby a bool is being promoted to an int. I found a Bugzilla entry and a message on the mailing list that I thought was similar to what I am seeing:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15484 http://gcc.gnu.org/ml/gcc/2004-05/msg00752.html Usage of the patch does not help for gcc-3.3 or 3.4 compilers on PPC. I tried a fresh checkout of 4.1.0, but it failed to cross-build for i686-linux hosted and powerpc-linux target. I am building my cross toolchains with 'crosstool'. Here is the output from my compile: powerpc-7450-linux-gnu-g++ -I../common -O2 -Wall -Wno-uninitialized -mtune=7450 -maltivec -g -c ../modify/transform.cpp -o transform.o ../modify/transform.cpp:109: error: prototype for `analysis::analysis(int, resolution, sample_allocator*, float, roi_node*, int)' does not match any in class `analysis' ../common/sample_processing.h:768: error: candidates are: analysis::analysis(const analysis&) ../common/sample_processing.h:781: error: analysis::analysis(resolution, sample_allocator*, bool, float, roi_node*) ../modify/transform.cpp:125: error: prototype for `sub_analysis::sub_analysis(resolution, sample_allocator*, int, float, roi_node*)' does not match any in class `sub_analysis' ../modify/analysis_local.h:49: error: candidates are: sub_analysis::sub_analysis(const sub_analysis&) ../modify/analysis_local.h:53: error: sub_analysis::sub_analysis(resolution, sample_allocator*, bool, float, roi_node*) ../modify/transform.cpp:309: error: prototype for `void sub_analysis::push(line_buf&, int)' does not match any in class `sub_analysis' ../modify/analysis_local.h:56: error: candidate is: virtual void sub_analysis::push(line_buf&, bool) make: *** [transform.o] Error 1 Does anyone have some insight on this? Thanks. -Steve