Go to file
David Majnemer 048f90cc04 [-cxx-abi microsoft] Properly mangle enums
While testing our ability to mangle large constants (PR18175), I
incidentally discovered that we did not properly mangle enums correctly.

Previously, we would append the width of the enum in bytes after the
type-tag differentiator.

This would mean "enum : short" would be mangled as 'W2' while "enum :
char" would be mangled as 'W1'.  Upon testing this with several versions
of MSVC, I found that this did not match their behavior: they always use
'W4'.

N.B.  Quick testing uncovered that undname allows different numbers to
follow the 'W' in the following way:

'W0' -> "enum char"
'W1' -> "enum unsigned char"
'W2' -> "enum short"
'W3' -> "enum unsigned short"
'W4' -> "enum"
'W5' -> "enum unsigned int"
'W6' -> "enum long"
'W7' -> "enum unsigned long"

However this scheme appears abandoned, I cannot get MSVC to trigger it.
Furthermore, it's incomplete: it doesn't handle "bool" or "long long".

llvm-svn: 196752
2013-12-09 04:28:34 +00:00
clang [-cxx-abi microsoft] Properly mangle enums 2013-12-09 04:28:34 +00:00
clang-tools-extra clang-modernize: Update PPCallback user. 2013-12-07 17:18:12 +00:00
compiler-rt Fix integer tests on platforms where uint64_t is 'unsigned long long'. 2013-12-06 21:49:18 +00:00
debuginfo-tests don't use CHECK-NEXT because it may be on the same line. 2013-09-18 23:01:54 +00:00
libclc Fix a C&P error in r195021 (65a950abab3cb8435ccb2646ac4773986c995c81) 2013-11-28 00:17:29 +00:00
libcxx Give all members of exception types default visibility. Lack of this is causing some illegal code relocations rare and hard to reproduce cases. 2013-12-04 21:03:23 +00:00
libcxxabi Rename UnwindRegisters*.s files to UnwindRegisters*.S, step 2 of 2 2013-12-06 00:37:21 +00:00
lld [PECOFF] Add /alternatename option parser. 2013-12-09 01:47:32 +00:00
lldb Fix Debian GNU/kFreeBSD build 2013-12-09 01:35:42 +00:00
llvm [Sparc]: Implement getSetCCResultType() in SparcTargetLowering so that umulo/smulo can be lowered on sparcv9 without an assertion error. 2013-12-09 04:02:15 +00:00
openmp Update web pages to include style sheets and referenced documents missed before. 2013-10-03 11:55:28 +00:00
polly Update isl to latest maintenance release 2013-12-07 11:58:06 +00:00