[llvm-bugs] [Bug 24857] New: Crash when building Qt code

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Sep 17 03:29:05 PDT 2015


https://llvm.org/bugs/show_bug.cgi?id=24857

            Bug ID: 24857
           Summary: Crash when building Qt code
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
          Assignee: unassignedclangbugs at nondot.org
          Reporter: tobias.hunger at gmail.com
                CC: dgregor at apple.com, llvm-bugs at lists.llvm.org
    Classification: Unclassified

Created attachment 14894
  --> https://llvm.org/bugs/attachment.cgi?id=14894&action=edit
clang output with crash report

I keep running into crashes when trying to build Qt Creator with LLVM from
trunk. Clang 3.7 builds the code just fine and so did trunk two weeks ago.

This is the actual command being run:

clang++ -c -pipe -Qunused-arguments -g -fvisibility=hidden
-fvisibility-inlines-hidden -std=gnu++11 -Wall -W -D_REENTRANT -fPIC
-DWITH_TESTS -DIDE_LIBRARY_BASENAME=\"lib\" -DQT_CREATOR -DQT_NO_CAST_TO_ASCII
-DQT_NO_CAST_FROM_ASCII -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION
-DQTC_CPU=X86Architecture -DPROJECTEXPLORER_LIBRARY -DQT_PLUGIN -DQT_QUICK_LIB
-DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_TESTLIB_LIB
-DQT_CONCURRENT_LIB -DQT_CORE_LIB
-DQT_TESTCASE_BUILDDIR='"/home/code/build/creator-clang-no-asan/qtcreator/src/plugins/projectexplorer"'
-I../../../src -I/home/code/src/creator/qtcreator/src/libs
-I/home/code/src/creator/qtcreator/tools
-I/home/code/src/creator/licensechecker/plugins
-I/home/code/src/creator/perfprofiler/plugins
-I/home/code/src/creator/qtcreator/src/plugins -I.
-I/home/code/src/qt5-dev-build/qtbase/include
-I/home/code/src/qt5-dev-build/qtbase/include/QtQuick
-I/home/code/src/qt5-dev-build/qtbase/include/QtWidgets
-I/home/code/src/qt5-dev-build/qtbase/include/QtGui
-I/home/code/src/qt5-dev-build/qtbase/include/QtQml
-I/home/code/src/qt5-dev-build/qtbase/include/QtNetwork
-I/home/code/src/qt5-dev-build/qtbase/include/QtTest
-I/home/code/src/qt5-dev-build/qtbase/include/QtConcurrent
-I/home/code/src/qt5-dev-build/qtbase/include/QtCore -I.moc/debug-shared -I.uic
-I/home/code/src/qt5-dev/qtbase/mkspecs/linux-clang -o
.obj/debug-shared/customwizard.o
/home/code/src/creator/qtcreator/src/plugins/projectexplorer/customwizard/customwizard.cpp


and that reliably crashes for me. "crash.E" was created using:

clang++ -E -pipe -Qunused-arguments -g -fvisibility=hidden
-fvisibility-inlines-hidden -std=gnu++11 -Wall -W -D_REENTRANT -fPIC
-DWITH_TESTS -DIDE_LIBRARY_BASENAME=\"lib\" -DQT_CREATOR -DQT_NO_CAST_TO_ASCII
-DQT_NO_CAST_FROM_ASCII -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION
-DQTC_CPU=X86Architecture -DPROJECTEXPLORER_LIBRARY -DQT_PLUGIN -DQT_QUICK_LIB
-DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_TESTLIB_LIB
-DQT_CONCURRENT_LIB -DQT_CORE_LIB
-DQT_TESTCASE_BUILDDIR='"/home/code/build/creator-clang-no-asan/qtcreator/src/plugins/projectexplorer"'
-I../../../src -I/home/code/src/creator/qtcreator/src/libs
-I/home/code/src/creator/qtcreator/tools
-I/home/code/src/creator/licensechecker/plugins
-I/home/code/src/creator/perfprofiler/plugins
-I/home/code/src/creator/qtcreator/src/plugins -I.
-I/home/code/src/qt5-dev-build/qtbase/include
-I/home/code/src/qt5-dev-build/qtbase/include/QtQuick
-I/home/code/src/qt5-dev-build/qtbase/include/QtWidgets
-I/home/code/src/qt5-dev-build/qtbase/include/QtGui
-I/home/code/src/qt5-dev-build/qtbase/include/QtQml
-I/home/code/src/qt5-dev-build/qtbase/include/QtNetwork
-I/home/code/src/qt5-dev-build/qtbase/include/QtTest
-I/home/code/src/qt5-dev-build/qtbase/include/QtConcurrent
-I/home/code/src/qt5-dev-build/qtbase/include/QtCore -I.moc/debug-shared -I.uic
-I/home/code/src/qt5-dev/qtbase/mkspecs/linux-clang -o /tmp/crash.E
/home/code/src/creator/qtcreator/src/plugins/projectexplorer/customwizard/customwizard.cpp


Building crash.E using:

clang++ -c -pipe -Qunused-arguments -g -fvisibility=hidden
-fvisibility-inlines-hidden -std=gnu++11 -Wall -W -fPIC -o /tmp/crash.o
/tmp/crash.E

does *NOT* crash.

So I am a bit lost as to how to reproduce this:-/


This is the generated output:

#0 0x16e72f5 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x16e72f5)
#1 0x16e60d6 llvm::sys::RunSignalHandlers()
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x16e60d6)
#2 0x16e62c3 SignalHandler(int)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x16e62c3)
#3 0x7f3378774d60 __restore_rt (/usr/lib/libpthread.so.0+0x10d60)
#4 0x18278b5 llvm::IRBuilder<false, llvm::ConstantFolder,
clang::CodeGen::CGBuilderInserter<false> >::CreateLoad(llvm::Value*,
llvm::Twine const&)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x18278b5)
#5 0x18f7022
clang::CodeGen::CodeGenFunction::EmitCall(clang::CodeGen::CGFunctionInfo
const&, llvm::Value*, clang::CodeGen::ReturnValueSlot,
clang::CodeGen::CallArgList const&, clang::Decl const*, llvm::Instruction**)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x18f7022)
#6 0x193a724 EmitNewDeleteCall(clang::CodeGen::CodeGenFunction&,
clang::FunctionDecl const*, clang::FunctionProtoType const*,
clang::CodeGen::CallArgList const&)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x193a724)
#7 0x193b662 (anonymous
namespace)::CallDeleteDuringNew::Emit(clang::CodeGen::CodeGenFunction&,
clang::CodeGen::EHScopeStack::Cleanup::Flags)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x193b662)
#8 0x1904381 EmitCleanup(clang::CodeGen::CodeGenFunction&,
clang::CodeGen::EHScopeStack::Cleanup*,
clang::CodeGen::EHScopeStack::Cleanup::Flags, clang::CodeGen::Address)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1904381)
#9 0x1905c90 clang::CodeGen::CodeGenFunction::PopCleanupBlock(bool)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1905c90)
#10 0x190700b
clang::CodeGen::CodeGenFunction::DeactivateCleanupBlock(clang::CodeGen::EHScopeStack::stable_iterator,
llvm::Instruction*)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x190700b)
#11 0x1943ad2 clang::CodeGen::CodeGenFunction::EmitCXXNewExpr(clang::CXXNewExpr
const*) (/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1943ad2)
#12 0x1957b53 (anonymous namespace)::ScalarExprEmitter::Visit(clang::Expr*)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1957b53)
#13 0x1958600 clang::CodeGen::CodeGenFunction::EmitScalarExpr(clang::Expr
const*, bool)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1958600)
#14 0x192379f clang::CodeGen::CodeGenFunction::EmitAnyExpr(clang::Expr const*,
clang::CodeGen::AggValueSlot, bool)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x192379f)
#15 0x192f13f clang::CodeGen::CodeGenFunction::EmitIgnoredExpr(clang::Expr
const*) (/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x192f13f)
#16 0x181f1ba clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x181f1ba)
#17 0x181f5cf
clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt
const&, bool, clang::CodeGen::AggValueSlot)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x181f5cf)
#18 0x1837372
clang::CodeGen::CodeGenFunction::EmitFunctionBody(clang::CodeGen::FunctionArgList&,
clang::Stmt const*)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1837372)
#19 0x183d5d3 clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl,
llvm::Function*, clang::CodeGen::CGFunctionInfo const&)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x183d5d3)
#20 0x1850ceb
clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::GlobalDecl,
llvm::GlobalValue*)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1850ceb)
#21 0x185fa65
clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl,
llvm::GlobalValue*)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x185fa65)
#22 0x185fba2 clang::CodeGen::CodeGenModule::EmitDeferred()
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x185fba2)
#23 0x185fbbe clang::CodeGen::CodeGenModule::EmitDeferred()
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x185fbbe)
#24 0x185fbbe clang::CodeGen::CodeGenModule::EmitDeferred()
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x185fbbe)
#25 0x185fbbe clang::CodeGen::CodeGenModule::EmitDeferred()
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x185fbbe)
#26 0x185fbbe clang::CodeGen::CodeGenModule::EmitDeferred()
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x185fbbe)
#27 0x185fbbe clang::CodeGen::CodeGenModule::EmitDeferred()
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x185fbbe)
#28 0x185fced clang::CodeGen::CodeGenModule::Release()
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x185fced)
#29 0x1cc4355 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1cc4355)
#30 0x1f1605a clang::ParseAST(clang::Sema&, bool, bool)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1f1605a)
#31 0x1a6eb5e clang::FrontendAction::Execute()
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1a6eb5e)
#32 0x1a49d29 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1a49d29)
#33 0x1ae7993 clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x1ae7993)
#34 0x816348 cc1_main(llvm::ArrayRef<char const*>, char const*, void*)
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x816348)
#35 0x7d6f89 main
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x7d6f89)
#36 0x7f3377934610 __libc_start_main (/usr/lib/libc.so.6+0x20610)
#37 0x812ff9 _start
(/home/code/installed/llvm-20150917-040001/bin/clang-3.8+0x812ff9)
Stack dump:
0.    Program arguments:
/home/code/installed/llvm-20150917-040001/bin/clang-3.8 -cc1 -triple
x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free
-disable-llvm-verifier -main-file-name
customwiza.stdout.hunger-desktop.31023.D8vhzL.ii -mrelocation-model pic
-pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose
-mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -g
-dwarf-column-info -coverage-file
/home/code/build/creator-clang-no-asan/qtcreator/src/plugins/projectexplorer/.obj/debug-shared/customwizard.o
-resource-dir /home/code/installed/llvm-20150917-040001/bin/../lib/clang/3.8.0
-Wall -W -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir
/home/code/build/creator-clang-no-asan/qtcreator/src/plugins/projectexplorer
-ferror-limit 19 -fmessage-length 0 -fvisibility hidden
-fvisibility-inlines-hidden -fobjc-runtime=gcc -fcxx-exceptions -fexceptions
-fdiagnostics-show-option -o .obj/debug-shared/customwizard.o -x c++-cpp-output
/home/code/.ccache/tmp/customwiza.stdout.hunger-desktop.31023.D8vhzL.ii 
1.    <eof> parser at end of file
2.    Per-file LLVM IR generation
3.   
/home/code/src/qt5-dev-build/qtbase/include/QtCore/../../../../qt5-dev/qtbase/src/corelib/tools/qsharedpointer_impl.h:221:29:
Generating code for declaration
'QtSharedPointer::ExternalRefCountWithCustomDeleter<ProjectExplorer::Internal::CustomWizardContext,
QtSharedPointer::NormalDeleter>::create'
clang-3.8: error: unable to execute command: Segmentation fault (core dumped)
clang-3.8: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 3.8.0 (http://llvm.org/git/clang.git
616618288d0499f833a95263e51bf11a59052389) (http://llvm.org/git/llvm.git
d139c5d412156f29f3c250283be18f91c97effcf)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/code/installed/llvm-current/bin
clang-3.8: note: diagnostic msg: PLEASE submit a bug report to
http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and
associated run script.
clang-3.8: note: diagnostic msg: Error generating preprocessed source(s) - no
preprocessable inputs.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150917/21cb7a25/attachment-0001.html>


More information about the llvm-bugs mailing list