------- Comment #5 from mikpe at it dot uu dot se 2010-06-13 16:49 ------- Created an attachment (id=20903) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20903&action=view) correction to encode-2.mm
On powerpc64 encode-2.mm fails because the test case scans the assembly output for the string "{?={Vec<double>=ddi}{Vec<float>=ffi}fd{Vec<char>=cci}i}", but on powerpc64 it is "{?={Vec<double>=ddi}{Vec<float>=ffi}fd{Vec<char>=CCi}i}". Note the different case for the "CC" part. That's because the test case instantiates a Vec with plain char and expects it to mangle to "c". However, plain char maps to either signed or unsigned char depending on the machine, and those two types mangle differently. Apparently "c" corresponds to signed char. Adjusting the test case to explicitly say "signed char" fixes it on powerpc64. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44518