]> granicus.if.org Git - clang/commit
"Fix" some unintentional fallout from converting
authorTed Kremenek <kremenek@apple.com>
Sun, 14 Nov 2010 17:47:35 +0000 (17:47 +0000)
committerTed Kremenek <kremenek@apple.com>
Sun, 14 Nov 2010 17:47:35 +0000 (17:47 +0000)
commit6c53fdd88f0d75875365463822fa817d7b1a9573
treee151ed03906e70c843c97e316f6c4c2a74e906c6
parentb9ce6567580e950898b8c2834468178e30805a73
"Fix" some unintentional fallout from converting
the Stmt* visitation in CursorVisitor to be
data-recursive.

Since AnnotationTokensWorker explicitly calls
CursorVisitor::VisitChildren(), it essentially
transforms the data-recursive algorithm in
CursorVisitor back into a non-data recursive one.
This is particularly bad because the data-recursive
algorithm uses more stack space per stack frame,
which can cause us to blow the stack in some cases.

"Fix" this by making the stack that AnnotationTokensWorker
runs in really huge.  The real fix is to modify
AnnotationTokensWorker not to do the explicit
recursive call.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119047 91177308-0d34-0410-b5e6-96231b3b80d8
tools/libclang/CIndex.cpp
tools/libclang/CIndexer.h