http://llvm.org/bugs/show_bug.cgi?id=10511
Summary: libclang crash when calling
clang_reparseTranslationUnit
Product: clang
Version: trunk
Platform: PC
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected], [email protected]
When reparsing a translation unit with the flag
CXTranslationUnit_CXXPrecompiledPreamble on (as
clang_defaultEditingTranslationUnitOptions does), then reparsing gives either:
Assertion failed: ((Offset & (1U << 31)) == 0 && "Bad offset in reading source
location"), function ReadSourceLocation, file
/data/clang-llvm/llvm/tools/clang/include/clang/Serialization/ASTReader.h, line
1456.
libclang: crash detected during reparsing
reparse failed.
or:
Assertion failed: ((LatestDecl->getLocation().isInvalid() ||
NewLatest->getLocation().isInvalid() ||
!Reader.SourceMgr.isBeforeInTranslationUnit( NewLatest->getLocation(),
LatestDecl->getLocation())) && "The new latest is supposed to come after the
previous latest"), function VisitRedeclarableTemplateDecl, file
/data/clang-llvm/llvm/tools/clang/lib/Serialization/ASTReaderDecl.cpp, line
1094.
libclang: crash detected during reparsing
Turning off CXTranslationUnit_CXXPrecompiledPreamble stops clang from crashing.
To reproduce:
- unzip the attached zip file
- download and unzip Qt 4.8
(http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.8.0-beta1.zip)
- copy qconfig.h to Qt's src/corelib/global directory
- edit gen-pch.sh for the QTDIR and the CLANGDIR
- run gen-pch.sh, that will generate the pre-compiled header from pch.h
- compile and run main.cpp which will parse crash.cpp and show the crash.
I already minimized the number of includes. Preprocessing the .cpp file and
including that will unfortunately not show the crash.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs