7f90b7d4c2
* Don't copy the visibility attribute during instantiations. We have to be able to distinguish struct HIDDEN foo {}; template<class T> DEFAULT void bar() {} template DEFAULT void bar<foo>(); from struct HIDDEN foo {}; template<class T> DEFAULT void bar() {} template void bar<foo>(); * If an instantiation has an attribute, it takes precedence over an attribute in the template. * With instantiation attributes handled with the above logic, we can now select the minimum visibility when looking at template arguments. llvm-svn: 156821 |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
ClangASTNodesEmitter.cpp | ||
ClangASTNodesEmitter.h | ||
ClangAttrEmitter.cpp | ||
ClangAttrEmitter.h | ||
ClangDiagnosticsEmitter.cpp | ||
ClangDiagnosticsEmitter.h | ||
ClangSACheckersEmitter.cpp | ||
ClangSACheckersEmitter.h | ||
Makefile | ||
NeonEmitter.cpp | ||
NeonEmitter.h | ||
OptParserEmitter.cpp | ||
OptParserEmitter.h | ||
TableGen.cpp |