hanchenye-llvm-project/clang/test
Reid Kleckner 18da98ef99 [ms-cxxabi] Use sugared types in the mangler instead of canonical types
At this point, it's clear that the MSVC mangler uses the type-as-written
instead of the canonical type, so this should bring us closer to MSVC.
The main thrust of this change is to fix the way we mangle decayed array
parameters of function pointer parameters.  With a DecayedType sugar
node, this code can now be much simpler.

Fixes PR16096.

This also fixes a separate issue that Richard spotted in review.
Because separate declarations of the same entity can be spelled and
mangled differently, MSVC always mangles the earliest declaration in an
attempt to avoid link errors.  Clang now does the same.

Reviewers: rsmith

Differential Revision: http://llvm-reviews.chandlerc.com/D844

llvm-svn: 184777
2013-06-24 19:21:52 +00:00
..
ARCMT [arcmt/driver] For the -ccc-arcmt-* flags, claim them when -fno-objc-arc is passed to avoid the 2013-06-24 19:01:18 +00:00
ASTMerge
Analysis Check the canonical parameter type with getAs<>() in a static checker 2013-06-24 16:56:16 +00:00
CXX Add the global namespace (the "::" namespace specifier) to the list of 2013-06-24 17:49:03 +00:00
CodeCompletion
CodeGen DebugInfo: Merge a bad debug info enum test into a good one 2013-06-24 06:47:30 +00:00
CodeGenCUDA
CodeGenCXX [ms-cxxabi] Use sugared types in the mangler instead of canonical types 2013-06-24 19:21:52 +00:00
CodeGenObjC DebugInfo: handle the DI asm printing change to reword '[fwd]' as '[decl]' and add '[def]' for non-decl tag types 2013-06-21 03:41:46 +00:00
CodeGenObjCXX Introduce a new mangling for protocol-qualified ObjC types in C++. This allows 2013-06-18 22:41:37 +00:00
CodeGenOpenCL
Coverage
Driver clang/test/Driver/coverage-ld.c: Tweak expressions to match dosish pathsep on win32 hosts. 2013-06-24 13:19:20 +00:00
FixIt Add the global namespace (the "::" namespace specifier) to the list of 2013-06-24 17:49:03 +00:00
Format Let clang-format move the cursor appropriately. 2013-05-21 12:21:39 +00:00
Frontend
Headers Remove dependence on system headers from this test, to try to make the Windows bots happier. 2013-05-09 22:45:27 +00:00
Index [AST] Introduce a new DecayedType sugar node 2013-06-24 17:51:48 +00:00
Lexer PR16339: Don't produce a diagnostic pointing at the whitespace between a '#if' 2013-06-16 05:05:39 +00:00
Misc Delete dead code. 2013-06-21 01:49:53 +00:00
Modules Avoid adding entries to the DeclContext lookup table multiple times when lazily 2013-06-24 07:20:36 +00:00
OpenMP OpenMP threadprivate with qualified names. 2013-05-13 04:18:18 +00:00
PCH When setting the external visible declarations for a decl context, check 2013-06-24 01:46:41 +00:00
Parser Add the global namespace (the "::" namespace specifier) to the list of 2013-06-24 17:49:03 +00:00
Preprocessor Make sure the assembler-with-cpp hack for "#" works with multiple "#"s in 2013-06-18 21:33:38 +00:00
Rewriter Define id to the correct type. 2013-06-07 18:41:01 +00:00
Sema [AST] Introduce a new DecayedType sugar node 2013-06-24 17:51:48 +00:00
SemaCUDA
SemaCXX [AST] Introduce a new DecayedType sugar node 2013-06-24 17:51:48 +00:00
SemaObjC [Sema] Call CheckParmForFunctionDef on ObjC method parameters 2013-06-24 14:38:26 +00:00
SemaObjCXX [Sema] Call CheckParmForFunctionDef on ObjC method parameters 2013-06-24 14:38:26 +00:00
SemaOpenCL
SemaTemplate Propagate the invalid bit from bases to derived template classes. 2013-06-21 18:58:32 +00:00
TableGen
Tooling Add support for static analysis to clang-check 2013-06-06 12:35:43 +00:00
Unit
CMakeLists.txt
Makefile
TestRunner.sh
cxx-sections.data
lit.cfg [clang-lit] Added the run_long_tests param option/long_tests feature to toggle execution of long running FileCheck tests. 2013-06-19 23:23:49 +00:00
lit.site.cfg.in
make_test_dirs.pl