ClangToT fails with a crash in clang::DeclContext::isDependentContext() |
|
Issue descriptionFrom https://ci.chromium.org/buildbot/chromium.clang/ToTLinux/1633 FAILED: obj/third_party/harfbuzz-ng/harfbuzz_source/hb-ot-font.o ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/third_party/harfbuzz-ng/harfbuzz_source/hb-ot-font.o.d -DHAVE_OT -DHAVE_ICU -DHAVE_ICU_BUILTIN -DHAVE_INTEL_ATOMIC_PRIMITIVES -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DCR_CLANG_REVISION=\"325328\" -DCOMPONENT_BUILD -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DFT_CONFIG_CONFIG_H=\"freetype-custom-config/ftconfig.h\" -DFT_CONFIG_MODULES_H=\"freetype-custom-config/ftmodule.h\" -DFT_CONFIG_OPTIONS_H=\"freetype-custom-config/ftoption.h\" -DPDFIUM_REQUIRED_MODULES -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_32 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DUCHAR_TYPE=uint16_t -I../.. -Igen -I../../third_party/freetype/include -I../../third_party/freetype/src/include -I../../build/linux/debian_stretch_amd64-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_stretch_amd64-sysroot/usr/lib/x86_64-linux-gnu/glib-2.0/include -I../../third_party/harfbuzz-ng/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -pthread -fcolor-diagnostics -Xclang -mllvm -Xclang -instcombine-lower-dbg-declare=0 -no-canonical-prefixes -m64 -march=x86-64 -O2 -fno-ident -fdata-sections -ffunction-sections -fno-omit-frame-pointer -g2 -ggnu-pubnames -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -fvisibility=default -Werror -Wall -Wno-unused-variable -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-unused-lambda-capture -Wno-user-defined-warnings -Wno-enum-compare-switch -Wno-null-pointer-arithmetic -Wno-unused-value -Wno-unused-local-typedef -std=gnu++14 -fno-exceptions -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_stretch_amd64-sysroot -c ../../third_party/harfbuzz-ng/src/hb-ot-font.cc -o obj/third_party/harfbuzz-ng/harfbuzz_source/hb-ot-font.o #0 0x000000000226d5ca llvm::sys::PrintStackTrace(llvm::raw_ostream&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x226d5ca) #1 0x000000000226b6ae llvm::sys::RunSignalHandlers() (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x226b6ae) #2 0x000000000226b812 SignalHandler(int) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x226b812) #3 0x00007fe09837b330 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x10330) #4 0x0000000003a98df4 clang::DeclContext::isDependentContext() const (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3a98df4) #5 0x0000000003185ae8 (anonymous namespace)::EffectiveContext::EffectiveContext(clang::DeclContext*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3185ae8) #6 0x000000000318ad59 clang::Sema::CheckAddressOfMemberAccess(clang::Expr*, clang::DeclAccessPair) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x318ad59) #7 0x00000000034d1fb9 clang::Sema::ResolveAddressOfOverloadedFunction(clang::Expr*, clang::QualType, bool, clang::DeclAccessPair&, bool*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x34d1fb9) #8 0x00000000033a5fac clang::Sema::PerformImplicitConversion(clang::Expr*, clang::QualType, clang::StandardConversionSequence const&, clang::Sema::AssignmentAction, clang::Sema::CheckedConversionKind) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x33a5fac) #9 0x00000000033b1df4 clang::Sema::PerformImplicitConversion(clang::Expr*, clang::QualType, clang::ImplicitConversionSequence const&, clang::Sema::AssignmentAction, clang::Sema::CheckedConversionKind) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x33b1df4) #10 0x00000000034dd081 clang::Sema::PerformImplicitConversion(clang::Expr*, clang::QualType, clang::Sema::AssignmentAction, bool, clang::ImplicitConversionSequence&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x34dd081) #11 0x00000000034dd16b clang::Sema::PerformImplicitConversion(clang::Expr*, clang::QualType, clang::Sema::AssignmentAction, bool) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x34dd16b) #12 0x000000000334ba57 clang::Sema::CheckSingleAssignmentConstraints(clang::QualType, clang::ActionResult<clang::Expr*, true>&, bool, bool, bool) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x334ba57) #13 0x000000000334c493 clang::Sema::CheckAssignmentOperands(clang::Expr*, clang::ActionResult<clang::Expr*, true>&, clang::SourceLocation, clang::QualType) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x334c493) #14 0x0000000003354fee clang::Sema::CreateBuiltinBinOp(clang::SourceLocation, clang::BinaryOperatorKind, clang::Expr*, clang::Expr*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3354fee) #15 0x0000000003355e6f clang::Sema::BuildBinOp(clang::Scope*, clang::SourceLocation, clang::BinaryOperatorKind, clang::Expr*, clang::Expr*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3355e6f) #16 0x0000000003356076 clang::Sema::ActOnBinOp(clang::Scope*, clang::SourceLocation, clang::tok::TokenKind, clang::Expr*, clang::Expr*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3356076) #17 0x0000000002fb05cc clang::Parser::ParseRHSOfBinaryExpression(clang::ActionResult<clang::Expr*, true>, clang::prec::Level) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fb05cc) #18 0x0000000002fb020c clang::Parser::ParseAssignmentExpression(clang::Parser::TypeCastState) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fb020c) #19 0x0000000002fb0279 clang::Parser::ParseExpression(clang::Parser::TypeCastState) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fb0279) #20 0x0000000002fea6da clang::Parser::ParseExprStatement() (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fea6da) #21 0x0000000002fe8b1d clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::AllowedConstructsKind, clang::SourceLocation*, clang::Parser::ParsedAttributesWithRange&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fe8b1d) #22 0x0000000002fe8d1e clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::AllowedConstructsKind, clang::SourceLocation*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fe8d1e) #23 0x0000000002fe8e8b clang::Parser::ParseStatement(clang::SourceLocation*, bool) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fe8e8b) #24 0x0000000002fead77 clang::Parser::ParseIfStatement(clang::SourceLocation*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fead77) #25 0x0000000002fe881b clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::AllowedConstructsKind, clang::SourceLocation*, clang::Parser::ParsedAttributesWithRange&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fe881b) #26 0x0000000002fe8d1e clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::AllowedConstructsKind, clang::SourceLocation*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fe8d1e) #27 0x0000000002febe0f clang::Parser::ParseCompoundStatementBody(bool) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2febe0f) #28 0x0000000002fedb4f clang::Parser::ParseFunctionStatementBody(clang::Decl*, clang::Parser::ParseScope&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fedb4f) #29 0x0000000002f7900c clang::Parser::ParseLexedMethodDef(clang::Parser::LexedMethod&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f7900c) #30 0x0000000002f78d7e clang::Parser::ParseLexedMethodDefs(clang::Parser::ParsingClass&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f78d7e) #31 0x0000000002f78d7e clang::Parser::ParseLexedMethodDefs(clang::Parser::ParsingClass&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f78d7e) #32 0x0000000002fa7af9 clang::Parser::ParseCXXMemberSpecification(clang::SourceLocation, clang::SourceLocation, clang::Parser::ParsedAttributesWithRange&, unsigned int, clang::Decl*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fa7af9) #33 0x0000000002fa9df9 clang::Parser::ParseClassSpecifier(clang::tok::TokenKind, clang::SourceLocation, clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, bool, clang::Parser::DeclSpecContext, clang::Parser::ParsedAttributesWithRange&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fa9df9) #34 0x0000000002f8c08c clang::Parser::ParseDeclarationSpecifiers(clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, clang::Parser::DeclSpecContext, clang::Parser::LateParsedAttrList*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f8c08c) #35 0x0000000002f719e6 clang::Parser::ParseDeclOrFunctionDefInternal(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec&, clang::AccessSpecifier) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f719e6) #36 0x0000000002f7224e clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec*, clang::AccessSpecifier) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f7224e) #37 0x0000000002f75a28 clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f75a28) #38 0x0000000002fa5a52 clang::Parser::ParseInnerNamespace(std::vector<clang::SourceLocation, std::allocator<clang::SourceLocation> >&, std::vector<clang::IdentifierInfo*, std::allocator<clang::IdentifierInfo*> >&, std::vector<clang::SourceLocation, std::allocator<clang::SourceLocation> >&, unsigned int, clang::SourceLocation&, clang::ParsedAttributes&, clang::BalancedDelimiterTracker&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fa5a52) #39 0x0000000002fa6289 clang::Parser::ParseNamespace(clang::DeclaratorContext, clang::SourceLocation&, clang::SourceLocation) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2fa6289) #40 0x0000000002f960d8 clang::Parser::ParseDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::Parser::ParsedAttributesWithRange&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f960d8) #41 0x0000000002f75a4a clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f75a4a) #42 0x0000000002f76aa2 clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f76aa2) #43 0x0000000002f6ecbb clang::ParseAST(clang::Sema&, bool, bool) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2f6ecbb) #44 0x0000000002b3b72f clang::CodeGenAction::ExecuteAction() (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x2b3b72f) #45 0x00000000027d6796 clang::FrontendAction::Execute() (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x27d6796) #46 0x00000000027ab96e clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x27ab96e) #47 0x000000000286a962 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x286a962) #48 0x0000000000c00588 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0xc00588) #49 0x0000000000b8f21c main (../../third_party/llvm-build/Release+Asserts/bin/clang+++0xb8f21c) #50 0x00007fe096f55f45 __libc_start_main /build/eglibc-ripdx6/eglibc-2.19/csu/libc-start.c:321:0 #51 0x0000000000bfb329 _start (../../third_party/llvm-build/Release+Asserts/bin/clang+++0xbfb329) Stack dump: 0. Program arguments: ../../third_party/llvm-build/Release+Asserts/bin/clang++ -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -disable-free -main-file-name hb-ot-font.cc -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debug-info-kind=limited -dwarf-version=4 -debugger-tuning=gdb -ggnu-pubnames -momit-leaf-frame-pointer -ffunction-sections -fdata-sections -coverage-notes-file /b/c/b/ToTLinux/src/out/Release/obj/third_party/harfbuzz-ng/harfbuzz_source/hb-ot-font.gcno -nostdinc++ -resource-dir ../../third_party/llvm-build/Release+Asserts/lib/clang/7.0.0 -dependency-file obj/third_party/harfbuzz-ng/harfbuzz_source/hb-ot-font.o.d -MT obj/third_party/harfbuzz-ng/harfbuzz_source/hb-ot-font.o -isystem ../../buildtools/third_party/libc++/trunk/include -isystem ../../buildtools/third_party/libc++abi/trunk/include -D HAVE_OT -D HAVE_ICU -D HAVE_ICU_BUILTIN -D HAVE_INTEL_ATOMIC_PRIMITIVES -D V8_DEPRECATION_WARNINGS -D USE_UDEV -D USE_AURA=1 -D USE_GLIB=1 -D USE_NSS_CERTS=1 -D USE_X11=1 -D FULL_SAFE_BROWSING -D SAFE_BROWSING_CSD -D SAFE_BROWSING_DB_LOCAL -D CHROMIUM_BUILD -D FIELDTRIAL_TESTING_ENABLED -D _FILE_OFFSET_BITS=64 -D _LARGEFILE_SOURCE -D _LARGEFILE64_SOURCE -D CR_CLANG_REVISION="325328" -D COMPONENT_BUILD -D NDEBUG -D NVALGRIND -D DYNAMIC_ANNOTATIONS_ENABLED=0 -D FT_CONFIG_CONFIG_H="freetype-custom-config/ftconfig.h" -D FT_CONFIG_MODULES_H="freetype-custom-config/ftmodule.h" -D FT_CONFIG_OPTIONS_H="freetype-custom-config/ftoption.h" -D PDFIUM_REQUIRED_MODULES -D GLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_32 -D GLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -D U_USING_ICU_NAMESPACE=0 -D U_ENABLE_DYLOAD=0 -D ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -D UCHAR_TYPE=uint16_t -I ../.. -I gen -I ../../third_party/freetype/include -I ../../third_party/freetype/src/include -I ../../build/linux/debian_stretch_amd64-sysroot/usr/include/glib-2.0 -I ../../build/linux/debian_stretch_amd64-sysroot/usr/lib/x86_64-linux-gnu/glib-2.0/include -I ../../third_party/harfbuzz-ng/src -I ../../third_party/icu/source/common -I ../../third_party/icu/source/i18n -D __DATE__= -D __TIME__= -D __TIMESTAMP__= -isysroot ../../build/linux/debian_stretch_amd64-sysroot -internal-isystem ../../build/linux/debian_stretch_amd64-sysroot/usr/local/include -internal-isystem ../../third_party/llvm-build/Release+Asserts/lib/clang/7.0.0/include -internal-externc-isystem ../../build/linux/debian_stretch_amd64-sysroot/usr/include/x86_64-linux-gnu -internal-externc-isystem ../../build/linux/debian_stretch_amd64-sysroot/include -internal-externc-isystem ../../build/linux/debian_stretch_amd64-sysroot/usr/include -O2 -Wno-builtin-macro-redefined -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Werror -Wall -Wno-unused-variable -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-unused-lambda-capture -Wno-user-defined-warnings -Wno-enum-compare-switch -Wno-null-pointer-arithmetic -Wno-unused-value -Wno-unused-local-typedef -std=gnu++14 -fdeprecated-macro -fdebug-compilation-dir /b/c/b/ToTLinux/src/out/Release -ferror-limit 19 -fmessage-length 0 -fvisibility default -pthread -stack-protector 1 -stack-protector-buffer-size 4 -fno-rtti -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp -mllvm -instcombine-lower-dbg-declare=0 -o obj/third_party/harfbuzz-ng/harfbuzz_source/hb-ot-font.o -x c++ ../../third_party/harfbuzz-ng/src/hb-ot-font.cc 1. ../../third_party/harfbuzz-ng/src/hb-ot-cmap-table.hh:549:64: current parser token ';' 2. ../../third_party/harfbuzz-ng/src/hb-ot-cmap-table.hh:33:1: parsing namespace 'OT' 3. ../../third_party/harfbuzz-ng/src/hb-ot-cmap-table.hh:495:1: parsing struct/union/class body 'OT::cmap' 4. ../../third_party/harfbuzz-ng/src/hb-ot-cmap-table.hh:510:5: parsing function body 'OT::cmap::accelerator_t::init' 5. ../../third_party/harfbuzz-ng/src/hb-ot-cmap-table.hh:510:5: in compound statement ('{}') clang++: error: unable to execute command: Segmentation fault (core dumped) clang++: error: clang frontend command failed due to signal (use -v to see invocation) clang version 7.0.0 (trunk 325328) Target: x86_64-unknown-linux-gnu Thread model: posix InstalledDir: ../../third_party/llvm-build/Release+Asserts/bin clang++: note: diagnostic msg: PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script. clang++: note: diagnostic msg:
,
Feb 16 2018
Attaching the repro.
,
Feb 16 2018
|
|
►
Sign in to add a comment |
|
Comment 1 by h...@chromium.org
, Feb 16 2018