diff options
| author | Steve Naroff <snaroff@apple.com> | 2008-11-03 11:20:24 +0000 | 
|---|---|---|
| committer | Steve Naroff <snaroff@apple.com> | 2008-11-03 11:20:24 +0000 | 
| commit | 3e7ced125bc579a72294e6fdc55cc6724e36ae7b (patch) | |
| tree | 48c99796b7a6eb2c6546a972551ebedf60455eeb /clang/Driver/RewriteObjC.cpp | |
| parent | 2530f5fe4324ddbed07c9a9b44fca63e81e96c0e (diff) | |
| download | bcm5719-llvm-3e7ced125bc579a72294e6fdc55cc6724e36ae7b.tar.gz bcm5719-llvm-3e7ced125bc579a72294e6fdc55cc6724e36ae7b.zip | |
Fix <rdar://problem/6336774> clang block rewriter: Assertion failed: Offset+NumBytes <= size() && "Invalid region to erase!", file c:\cygwin\home\Administrator\llvm\to ols\clang\include\clang/Rewrite/RewriteRope.h, line 219.
llvm-svn: 58607
Diffstat (limited to 'clang/Driver/RewriteObjC.cpp')
| -rw-r--r-- | clang/Driver/RewriteObjC.cpp | 3 | 
1 files changed, 3 insertions, 0 deletions
| diff --git a/clang/Driver/RewriteObjC.cpp b/clang/Driver/RewriteObjC.cpp index 39f4f15ae9b..ee9e2bc2492 100644 --- a/clang/Driver/RewriteObjC.cpp +++ b/clang/Driver/RewriteObjC.cpp @@ -3570,6 +3570,9 @@ void RewriteObjC::RewriteCastExpr(CastExpr *CE) {    // Need to avoid trying to rewrite synthesized casts.    if (LocStart.isInvalid())      return; +  // Need to avoid trying to rewrite casts contained in macros. +  if (!Rewriter::isRewritable(LocStart) || !Rewriter::isRewritable(LocEnd)) +    return;    const char *startBuf = SM->getCharacterData(LocStart);    const char *endBuf = SM->getCharacterData(LocEnd); | 

