llvm-project/clang/test/CXX/drs
Richard Smith df963a38a9 DR1113: anonymous namespaces formally give their contents internal linkage.
This doesn't affect our code generation in any material way -- we already give
such declarations internal linkage from a codegen perspective -- but it has
some subtle effects on code validity.

We suppress the 'L' (internal linkage) marker for mangled names in anonymous
namespaces, because it is redundant (the information is already carried by the
namespace); this deviates from GCC's behavior if a variable or function in an
anonymous namespace is redundantly declared 'static' (where GCC does include
the 'L'), but GCC's behavior is incoherent because such a declaration can be
validly declared with or without the 'static'.

We still deviate from the standard in one regard here: extern "C" declarations
in anonymous namespaces are still granted external linkage. Changing those does
not appear to have been an intentional consequence of the standard change in
DR1113.

llvm-svn: 314037
2017-09-22 22:21:44 +00:00
..
dr0xx.cpp Replace remaining user-visible mentions of C++1z with C++17. 2017-08-13 22:26:53 +00:00
dr1xx.cpp Replace remaining user-visible mentions of C++1z with C++17. 2017-08-13 22:26:53 +00:00
dr2xx.cpp Replace remaining user-visible mentions of C++1z with C++17. 2017-08-13 22:26:53 +00:00
dr3xx.cpp Implement DR 373 "Lookup on namespace qualified name in using-directive" 2017-03-17 21:41:20 +00:00
dr4xx.cpp Replace remaining user-visible mentions of C++1z with C++17. 2017-08-13 22:26:53 +00:00
dr5xx.cpp Replace remaining user-visible mentions of C++1z with C++17. 2017-08-13 22:26:53 +00:00
dr6xx.cpp Update C++ status pages for Clang 4 branch: 2017-01-13 00:57:54 +00:00
dr7xx.cpp Mark DR777 only as fixed in clang SVN. 2015-03-27 17:38:35 +00:00
dr9xx.cpp [Parse] Allow 'constexpr' in condition declarations 2015-06-25 22:06:40 +00:00
dr10xx.cpp Finish implementation of C++ DR1310 (http://wg21.link/cwg1310). 2017-01-20 00:20:39 +00:00
dr11xx.cpp DR1113: anonymous namespaces formally give their contents internal linkage. 2017-09-22 22:21:44 +00:00
dr12xx.cpp Implement DR1265 (wg21.link/cwg1265). 2017-01-13 02:22:01 +00:00
dr13xx.cpp Replace remaining user-visible mentions of C++1z with C++17. 2017-08-13 22:26:53 +00:00
dr14xx.cpp Update C++ status pages for Clang 4 branch: 2017-01-13 00:57:54 +00:00
dr15xx.cpp Update C++ status pages for Clang 4 branch: 2017-01-13 00:57:54 +00:00
dr16xx.cpp C++ DR1611, 1658, 2180: implement "potentially constructed subobject" rules for special member functions. 2017-02-25 23:53:05 +00:00
dr17xx.cpp P0136R1, DR1573, DR1645, DR1715, DR1736, DR1903, DR1941, DR1959, DR1991: 2016-06-28 19:03:57 +00:00
dr18xx.cpp Update C++ status pages for Clang 4 branch: 2017-01-13 00:57:54 +00:00
dr19xx.cpp PR31606: Generalize our tentative DR resolution for inheriting copy/move 2017-01-13 20:46:54 +00:00
dr20xx.cpp PR33850: Update cxx_dr_status for Clang 5 branch. 2017-08-11 03:14:20 +00:00
dr21xx.cpp C++ DR1611, 1658, 2180: implement "potentially constructed subobject" rules for special member functions. 2017-02-25 23:53:05 +00:00
dr118.cpp Add tests for a couple more DRs. 2016-12-09 19:35:45 +00:00
dr158.cpp Make '-disable-llvm-optzns' an alias for '-disable-llvm-passes'. 2016-12-23 00:23:01 +00:00
dr412.cpp C++14: Disable sized deallocation by default due to ABI breakage 2015-03-20 00:31:07 +00:00
dr1748.cpp