142ab06ffb2ec286917554aa5d945323a1ebf359 |
|
14-Nov-2013 |
Serge Pavlov <sepavloff@gmail.com> |
Added warning on structures/unions that are empty or contain only bit fields of zero size. Warnings are generated in C++ mode and if only such type is defined inside extern "C" block. The patch fixed PR5065. Differential Revision: http://llvm-reviews.chandlerc.com/D2151 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194653 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/extern-c.cpp
|
a41c97a5d1912ffd184381d269fd8e5a25ee5e59 |
|
20-Sep-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Switch the semantic DeclContext for a block-scope declaration of a function or variable from being the function to being the enclosing namespace scope (in C++) or the TU (in C). This allows us to fix a selection of related issues where we would build incorrect redeclaration chains for such declarations, and fail to notice type mismatches. Such declarations are put into a new IdentifierNamespace, IDNS_LocalExtern, which is only found when searching scopes, and not found when searching DeclContexts. Such a declaration is only made visible in its DeclContext if there are no non-LocalExtern declarations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191064 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/extern-c.cpp
|
aa4bc18240c03b5ed7952aa5e013c081f8733ed3 |
|
30-Jun-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Reinstate r185229, reverted in r185256, with a tweak: further ignore the standard's rule that an extern "C" declaration conflicts with any entity in the global scope with the same name. Now we only care if the global scope entity is a variable declaration (and so might have the same mangled name as the extern "C" declaration). This has been reported as a standard defect. Original commit message: PR7927, PR16247: Reimplement handling of matching extern "C" declarations across scopes. When we declare an extern "C" name that is not a redeclaration of an entity in the same scope, check whether it redeclares some extern "C" entity from another scope, and if not, check whether it conflicts with a (non-extern-"C") entity in the translation unit. When we declare a name in the translation unit that is not a redeclaration, check whether it conflicts with any extern "C" entities (possibly from other scopes). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185281 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/extern-c.cpp
|
6e428a446ed7cc170346430afa7be54e83b2d28c |
|
29-Jun-2013 |
Timur Iskhodzhanov <timurrrr@google.com> |
Revert r185229 as it breaks compilation of <windows.h> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185256 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/extern-c.cpp
|
5eab8d733ce7867fda4e6d5f5afa6dfe8a105c79 |
|
29-Jun-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
PR7927, PR16247: Reimplement handling of matching extern "C" declarations across scopes. When we declare an extern "C" name that is not a redeclaration of an entity in the same scope, check whether it redeclares some extern "C" entity from another scope, and if not, check whether it conflicts with a (non-extern-"C") entity in the translation unit. When we declare a name in the translation unit that is not a redeclaration, check whether it conflicts with any extern "C" entities (possibly from other scopes). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185229 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/extern-c.cpp
|
662f41bd9d4bfb4aebaba05e6043a6ff5f0dc2ff |
|
18-Jun-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
DR14, DR101, and part of DR1: fix handling of extern "C" declarations in namespaces, by treating them just like we treat extern "C" declarations in function scope. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/extern-c.cpp
|
82aaebeaad75456bc736ea1c474479bb6597305d |
|
12-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add an interesting testcase we already handle correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/extern-c.cpp
|
c812c3ae43e0608c9ccf7f4c5f71f376609eecae |
|
12-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move the extern "C" sema tests to a new file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/extern-c.cpp
|