Fix for <rdar://problem/6113807> clang ObjC rewriter: crash rewriting attached file

While this is a safe rewriter fix, there is still a need for some discussion (see report for more info).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54412 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/RewriteObjC.cpp b/Driver/RewriteObjC.cpp
index b83200e..408860e 100644
--- a/Driver/RewriteObjC.cpp
+++ b/Driver/RewriteObjC.cpp
@@ -1692,7 +1692,9 @@
       startBuf = ++endBuf;
     }
     else {
-      while (*startBuf != ')' && *startBuf != ',')
+      // If the function name is derived from a macro expansion, then the
+      // argument buffer will not follow the name. Need to speak with Chris.
+      while (*startBuf && *startBuf != ')' && *startBuf != ',')
         startBuf++; // scan forward (from the decl location) for argument types.
       startBuf++;
     }