]> granicus.if.org Git - clang/commit
Two additions...
authorSteve Naroff <snaroff@apple.com>
Sun, 4 Nov 2007 22:37:50 +0000 (22:37 +0000)
committerSteve Naroff <snaroff@apple.com>
Sun, 4 Nov 2007 22:37:50 +0000 (22:37 +0000)
commitab972d3c4b49fb0b99ae2beee70c1771a05342ba
tree5efa0235c7ddece64df18984edd7cd9d8d31657a
parentdb611d556f71f98b66b69514d45958d76e5727ab
Two additions...

- Synthesize the funky cast for objc_msgSend(). For the basic case, it looks like...

((id (*)(id, SEL))(void *)objc_msgSend)(obj, sel);

The "void *" cast is needed to workaround a GCC "bandaid" (Chris says it has something to do with the inliner). Without the extra "void *" cast, we get spurious warnings/notes that look like...

xx.m:17: warning: function called through a non-compatible type
xx.m:17: note: if this code is reached, the program will abort

- Add prototypes for the ObjC functions we call, objc_msgSend/objc_getClass for now (don't depend on them being included).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43685 91177308-0d34-0410-b5e6-96231b3b80d8
Driver/RewriteTest.cpp