[PATCH] D31673: Allow casting C pointers declared using extern "C" to ObjC pointer types

2017-04-11 Thread Akira Hatanaka via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL22: [Sema][ObjC] Check whether a variable has a definition, rather than (authored by ahatanak). Changed prior to commit: https://reviews.llvm.org/D31673?vs=94686=94899#toc Repository: rL LLVM

[PATCH] D31673: Allow casting C pointers declared using extern "C" to ObjC pointer types

2017-04-10 Thread John McCall via Phabricator via cfe-commits
rjmccall accepted this revision. rjmccall added a comment. This revision is now accepted and ready to land. Thanks, LGTM. https://reviews.llvm.org/D31673 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D31673: Allow casting C pointers declared using extern "C" to ObjC pointer types

2017-04-10 Thread Akira Hatanaka via Phabricator via cfe-commits
ahatanak updated this revision to Diff 94686. ahatanak marked an inline comment as done. https://reviews.llvm.org/D31673 Files: lib/Sema/SemaExprObjC.cpp test/SemaObjCXX/arc-bridged-cast.mm Index: test/SemaObjCXX/arc-bridged-cast.mm

[PATCH] D31673: Allow casting C pointers declared using extern "C" to ObjC pointer types

2017-04-10 Thread Akira Hatanaka via Phabricator via cfe-commits
ahatanak added inline comments. Comment at: lib/Sema/SemaExprObjC.cpp:3358 var && - var->getStorageClass() == SC_Extern && + !var->isThisDeclarationADefinition() && var->getType().isConstQualified()) { rjmccall wrote: >

[PATCH] D31673: Allow casting C pointers declared using extern "C" to ObjC pointer types

2017-04-06 Thread John McCall via Phabricator via cfe-commits
rjmccall added inline comments. Comment at: lib/Sema/SemaExprObjC.cpp:3358 var && - var->getStorageClass() == SC_Extern && + !var->isThisDeclarationADefinition() && var->getType().isConstQualified()) { ahatanak wrote: >

[PATCH] D31673: Allow casting C pointers declared using extern "C" to ObjC pointer types

2017-04-06 Thread Akira Hatanaka via Phabricator via cfe-commits
ahatanak updated this revision to Diff 94460. ahatanak marked an inline comment as done. https://reviews.llvm.org/D31673 Files: lib/Sema/SemaExprObjC.cpp test/SemaObjCXX/arc-bridged-cast.mm Index: test/SemaObjCXX/arc-bridged-cast.mm

[PATCH] D31673: Allow casting C pointers declared using extern "C" to ObjC pointer types

2017-04-06 Thread Akira Hatanaka via Phabricator via cfe-commits
ahatanak added inline comments. Comment at: lib/Sema/SemaExprObjC.cpp:3358 var && - var->getStorageClass() == SC_Extern && + !var->isThisDeclarationADefinition() && var->getType().isConstQualified()) { rjmccall wrote: >

[PATCH] D31673: Allow casting C pointers declared using extern "C" to ObjC pointer types

2017-04-04 Thread John McCall via Phabricator via cfe-commits
rjmccall added inline comments. Comment at: lib/Sema/SemaExprObjC.cpp:3358 var && - var->getStorageClass() == SC_Extern && + !var->isThisDeclarationADefinition() && var->getType().isConstQualified()) { Hmm. Come to think

[PATCH] D31673: Allow casting C pointers declared using extern "C" to ObjC pointer types

2017-04-04 Thread Akira Hatanaka via Phabricator via cfe-commits
ahatanak created this revision. ARCCastChecker::VisitDeclRefExpr allows casting a constant pointer declared in a header file to an ObjC pointer type. However, it rejects a cast from a variable declared with a language linkage specification (e.g., extern "C") to an ObjC pointer type. According