[PATCH] D13954: CodeGen: Fix LLVM assertion if Swift and Clang emit Objective-C class reference in same LLVM module
John McCall via cfe-commits
cfe-commits at lists.llvm.org
Wed Oct 21 13:18:18 PDT 2015
rjmccall added a comment.
It just occurred to me that there is a way to test this in Clang with the asm-label extension:
int Foo_class asm("OBJC_CLASS_$_Foo");
Of course, you'll have to actually use it from somewhere, or define it, in order for it to actually show up in the IR and cause a conflict.
You should probably also test that we do something sane if the caller is making a definition but one already exists. An error counts as "sane"; just make sure you return a GlobalVariable of the right type. There's model code for this in GetOrCreateLLVMFunction, although it's okay for the diagnostic here to be worse than that one.
More information about the cfe-commits