------- Comment #7 from iains at gcc dot gnu dot org 2010-06-13 17:07 ------- (In reply to comment #5) > Created an attachment (id=20903) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20903&action=view) [edit] > 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.
Indeed, good catch, thanks. I'll stick that in the melting pot for the next round - there are other encode updates needed. Too late to do any more for 4.5.1 anyway, I suspect. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44518