Quuxplusone / LLVMBugzillaTest

0 stars 0 forks source link

Compiler crashes with Assertion `QualifierLoc && "should be created for dependent qualifiers"' failed #38521

Open Quuxplusone opened 6 years ago

Quuxplusone commented 6 years ago
Bugzilla Link PR39547
Status NEW
Importance P normal
Reported by Khushal Sagar (khushalsagar@chromium.org)
Reported on 2018-11-02 17:21:56 -0700
Last modified on 2018-11-02 17:22:47 -0700
Version unspecified
Hardware PC Linux
CC dgregor@apple.com, llvm-bugs@lists.llvm.org, richard-llvm@metafoo.co.uk
Fixed by commit(s)
Attachments paint_cache-70b05b.sh (13955 bytes, application/x-shellscript)
Blocks
Blocked by
See also
Attaching the output from the script:

clang++: /b/swarming/w/ir/kitchen-
workdir/src/third_party/llvm/tools/clang/lib/AST/ExprCXX.cpp:426: static
clang::DependentScopeDeclRefExpr
*clang::DependentScopeDeclRefExpr::Create(const clang::ASTContext &,
clang::NestedNameSpecifierLoc, clang::SourceLocation, const
clang::DeclarationNameInfo &, const clang::TemplateArgumentListInfo *):
Assertion `QualifierLoc && "should be created for dependent qualifiers"' failed.
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
paint_cache.cc -mrelocation-model pic -pic-level 2 -mthread-model posix -fmerge-
all-constants -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose -
mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-
column-info -debugger-tuning=gdb -momit-leaf-frame-pointer -ffunction-sections -
fdata-sections -coverage-notes-file
/usr/local/google/home/khushalsagar/code/clankium/src/out/linux-
release/obj/cc/paint/paint/paint_cache.gcno -nostdinc++ -resource-dir
../../third_party/llvm-build/Release+Asserts/lib/clang/8.0.0 -dependency-file
obj/cc/paint/paint/paint_cache.o.d -MT obj/cc/paint/paint/paint_cache.o -
isystem ../../build/linux/debian_sid_amd64-sysroot/usr/include/glib-2.0 -
isystem ../../build/linux/debian_sid_amd64-sysroot/usr/lib/x86_64-linux-
gnu/glib-2.0/include -isystem ../../buildtools/third_party/libc++/trunk/include
-isystem ../../buildtools/third_party/libc++abi/trunk/include -D
CC_PAINT_IMPLEMENTATION=1 -D V8_DEPRECATION_WARNINGS -D DCHECK_ALWAYS_ON=1 -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 _GNU_SOURCE -D
CR_CLANG_REVISION="344066-1" -D __STDC_CONSTANT_MACROS -D __STDC_FORMAT_MACROS -
D COMPONENT_BUILD -D CR_LIBCXX_REVISION=344254 -D CR_LIBCXXABI_REVISION=344215 -
D _LIBCPP_ENABLE_NODISCARD -D
CR_SYSROOT_HASH=e7c53f04bd88d29d075bfd1f62b073aeb69cbe09 -D NDEBUG -D NVALGRIND
-D DYNAMIC_ANNOTATIONS_ENABLED=0 -D GLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_32 -
D GLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -D WEBP_EXTERN=extern -D
SK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -D SK_HAS_PNG_LIBRARY -D
SK_HAS_WEBP_LIBRARY -D SK_HAS_JPEG_LIBRARY -D
SK_VULKAN_HEADER="../../skia/config/SkVulkanConfig.h" -D SK_VULKAN=1 -D
SKIA_DLL -D GR_GL_IGNORE_ES3_MSAA=0 -D
SKCMS_API=__attribute__((visibility("default"))) -D SK_SUPPORT_GPU=1 -D
SK_GPU_WORKAROUNDS_HEADER="gpu/config/gpu_driver_bug_workaround_autogen.h" -D
VK_NO_PROTOTYPES -D U_USING_ICU_NAMESPACE=0 -D U_ENABLE_DYLOAD=0 -D
USE_CHROMIUM_ICU=1 -D ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -D
UCHAR_TYPE=uint16_t -D GOOGLE_PROTOBUF_NO_RTTI -D
GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -D HAVE_PTHREAD -D PROTOBUF_USE_DLLS -I
../.. -I gen -I ../../third_party/libwebp/src -I ../../skia/config -I
../../skia/ext -I ../../third_party/skia/include/c -I
../../third_party/skia/include/config -I ../../third_party/skia/include/core -I
../../third_party/skia/include/docs -I ../../third_party/skia/include/effects -
I ../../third_party/skia/include/encode -I ../../third_party/skia/include/gpu -
I ../../third_party/skia/include/pathops -I
../../third_party/skia/include/ports -I ../../third_party/skia/include/utils -I
../../third_party/vulkan/include -I
../../third_party/skia/third_party/vulkanmemoryallocator -I
../../third_party/skia/include/codec -I ../../third_party/skia/src/gpu -I
../../third_party/skia/src/sksl -I
../../third_party/skia/modules/skottie/include -I
../../third_party/vulkan/include -I ../../third_party/ced/src -I
../../third_party/icu/source/common -I ../../third_party/icu/source/i18n -I
../../third_party/protobuf/src -D __DATE__= -D __TIME__= -D __TIMESTAMP__= -
isysroot ../../build/linux/debian_sid_amd64-sysroot -internal-isystem
../../build/linux/debian_sid_amd64-sysroot/usr/local/include -internal-isystem
../../third_party/llvm-build/Release+Asserts/lib/clang/8.0.0/include -internal-
externc-isystem ../../build/linux/debian_sid_amd64-sysroot/usr/include/x86_64-
linux-gnu -internal-externc-isystem ../../build/linux/debian_sid_amd64-
sysroot/include -internal-externc-isystem ../../build/linux/debian_sid_amd64-
sysroot/usr/include -O2 -Wno-builtin-macro-redefined -Wall -Werror -Wextra -
Wimplicit-fallthrough -Wthread-safety -Wno-missing-field-initializers -Wno-
unused-parameter -Wno-c++11-narrowing -Wno-unneeded-internal-declaration -Wno-
undefined-var-template -Wno-null-pointer-arithmetic -Wno-ignored-pragma-
optimize -Wno-defaulted-function-deleted -Wheader-hygiene -Wstring-conversion -
Wtautological-overlap-compare -Wexit-time-destructors -Wno-shorten-64-to-32 -
std=c++14 -fdeprecated-macro -fdebug-compilation-dir
/usr/local/google/home/khushalsagar/code/clankium/src/out/linux-release -ferror-
limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -
pthread -stack-protector 1 -stack-protector-buffer-size 4 -fno-rtti -fobjc-
runtime=gcc -Qn -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -
vectorize-slp -mllvm -instcombine-lower-dbg-declare=0 -load
../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -add-
plugin find-bad-constructs -plugin-arg-find-bad-constructs enforce-in-
thirdparty-webkit -plugin-arg-find-bad-constructs check-enum-max-value -plugin-
arg-find-bad-constructs check-ipc -o obj/cc/paint/paint/paint_cache.o -x c++
../../cc/paint/paint_cache.cc -fcomplete-member-pointers -faddrsig
1.  ../../cc/paint/paint_cache.cc:143:36: current parser token '?'
2.  ../../cc/paint/paint_cache.cc:11:1: parsing namespace 'cc'
3.  ../../cc/paint/paint_cache.cc:141:53: parsing function body
'cc::ServicePaintCache::GetPath'
4.  ../../cc/paint/paint_cache.cc:141:53: in compound statement ('{}')
5.  ../../buildtools/third_party/libc++/trunk/include/map:632:8: instantiating
class definition 'std::__1::__value_type<unsigned int, SkPath>'
6.  ../../buildtools/third_party/libc++/trunk/include/utility:315:29:
instantiating class definition 'std::__1::pair<const unsigned int, SkPath>'
#0 0x0000000002197af4 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x2197af4)
#1 0x000000000219598e llvm::sys::RunSignalHandlers() (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x219598e)
#2 0x0000000002197cb2 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x2197cb2)
#3 0x00007f87c0dc60c0 __restore_rt (/lib/x86_64-linux-
gnu/libpthread.so.0+0x110c0)
#4 0x00007f87bfb81fcf gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x32fcf)
#5 0x00007f87bfb833fa abort (/lib/x86_64-linux-gnu/libc.so.6+0x343fa)
#6 0x00007f87bfb7ae37 (/lib/x86_64-linux-gnu/libc.so.6+0x2be37)
#7 0x00007f87bfb7aee2 (/lib/x86_64-linux-gnu/libc.so.6+0x2bee2)
#8 0x0000000003ff47be (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3ff47be)
#9 0x0000000003be2c43
clang::Sema::BuildQualifiedTemplateIdExpr(clang::CXXScopeSpec&,
clang::SourceLocation, clang::DeclarationNameInfo const&,
clang::TemplateArgumentListInfo const*) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3be2c43)
#10 0x0000000003cc0807 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3cc0807)
#11 0x0000000003cb4b84 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3cb4b84)
#12 0x0000000003cbf49a (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3cbf49a)
#13 0x0000000003cbd8b2 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3cbd8b2)
#14 0x0000000003c9e816 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3c9e816)
#15 0x0000000003c9e0c3 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3c9e0c3)
#16 0x0000000003c9dce2 clang::Sema::SubstType(clang::TypeSourceInfo*,
clang::MultiLevelTemplateArgumentList const&, clang::SourceLocation,
clang::DeclarationName, bool) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3c9dce2)
#17 0x0000000003ce032c
clang::TemplateDeclInstantiator::VisitNonTypeTemplateParmDecl(clang::NonTypeTemplateParmDecl*)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3ce032c)
#18 0x0000000003cd6afd
clang::TemplateDeclInstantiator::SubstTemplateParams(clang::TemplateParameterList*)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3cd6afd)
#19 0x0000000003cdc243
clang::TemplateDeclInstantiator::VisitFunctionTemplateDecl(clang::FunctionTemplateDecl*)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3cdc243)
#20 0x0000000003ca8258 clang::Sema::InstantiateClass(clang::SourceLocation,
clang::CXXRecordDecl*, clang::CXXRecordDecl*,
clang::MultiLevelTemplateArgumentList const&,
clang::TemplateSpecializationKind, bool) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3ca8258)
#21 0x0000000003ca9df6
clang::Sema::InstantiateClassTemplateSpecialization(clang::SourceLocation,
clang::ClassTemplateSpecializationDecl*, clang::TemplateSpecializationKind,
bool) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3ca9df6)
#22 0x0000000003d1f419
clang::Sema::RequireCompleteTypeImpl(clang::SourceLocation, clang::QualType,
clang::Sema::TypeDiagnoser*) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3d1f419)
#23 0x0000000003d1ed3f clang::Sema::RequireCompleteType(clang::SourceLocation,
clang::QualType, clang::Sema::TypeDiagnoser&) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3d1ed3f)
#24 0x0000000003d0bc76 clang::Sema::RequireCompleteType(clang::SourceLocation,
clang::QualType, unsigned int) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3d0bc76)
#25 0x00000000037bf69c clang::Sema::CheckFieldDecl(clang::DeclarationName,
clang::QualType, clang::TypeSourceInfo*, clang::RecordDecl*,
clang::SourceLocation, bool, clang::Expr*, clang::InClassInitStyle,
clang::SourceLocation, clang::AccessSpecifier, clang::NamedDecl*,
clang::Declarator*) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x37bf69c)
#26 0x0000000003cd8124
clang::TemplateDeclInstantiator::VisitFieldDecl(clang::FieldDecl*)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3cd8124)
#27 0x0000000003ca8258 clang::Sema::InstantiateClass(clang::SourceLocation,
clang::CXXRecordDecl*, clang::CXXRecordDecl*,
clang::MultiLevelTemplateArgumentList const&,
clang::TemplateSpecializationKind, bool) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3ca8258)
#28 0x0000000003ca9df6
clang::Sema::InstantiateClassTemplateSpecialization(clang::SourceLocation,
clang::ClassTemplateSpecializationDecl*, clang::TemplateSpecializationKind,
bool) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3ca9df6)
#29 0x0000000003d1f419
clang::Sema::RequireCompleteTypeImpl(clang::SourceLocation, clang::QualType,
clang::Sema::TypeDiagnoser*) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3d1f419)
#30 0x0000000003a8b253 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3a8b253)
#31 0x0000000003a8b210 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3a8b210)
#32 0x0000000003a8b210 (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3a8b210)
#33 0x0000000003a8a828
clang::Sema::FindAssociatedClassesAndNamespaces(clang::SourceLocation,
llvm::ArrayRef<clang::Expr*>, llvm::SmallSetVector<clang::DeclContext*, 16u>&,
llvm::SmallSetVector<clang::CXXRecordDecl*, 16u>&) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3a8a828)
#34 0x0000000003a8e2ad
clang::Sema::ArgumentDependentLookup(clang::DeclarationName,
clang::SourceLocation, llvm::ArrayRef<clang::Expr*>, clang::ADLResult&)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3a8e2ad)
#35 0x0000000003b5443a
clang::Sema::AddArgumentDependentLookupCandidates(clang::DeclarationName,
clang::SourceLocation, llvm::ArrayRef<clang::Expr*>,
clang::TemplateArgumentListInfo*, clang::OverloadCandidateSet&, bool)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x3b5443a)
#36 0x0000000003b641a5
clang::Sema::CreateOverloadedBinOp(clang::SourceLocation,
clang::BinaryOperatorKind, clang::UnresolvedSetImpl const&, clang::Expr*,
clang::Expr*, bool) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3b641a5)
#37 0x0000000003961ede (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3961ede)
#38 0x00000000039210b0 clang::Sema::ActOnBinOp(clang::Scope*,
clang::SourceLocation, clang::tok::TokenKind, clang::Expr*, clang::Expr*)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x39210b0)
#39 0x000000000341b367
clang::Parser::ParseRHSOfBinaryExpression(clang::ActionResult<clang::Expr*,
true>, clang::prec::Level) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x341b367)
#40 0x000000000341a450
clang::Parser::ParseAssignmentExpression(clang::Parser::TypeCastState)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x341a450)
#41 0x000000000341a339
clang::Parser::ParseExpression(clang::Parser::TypeCastState)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x341a339)
#42 0x000000000346dffa clang::Parser::ParseReturnStatement()
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x346dffa)
#43 0x0000000003468172
clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*,
32u>&, clang::Parser::AllowedConstructsKind, clang::SourceLocation*,
clang::Parser::ParsedAttributesWithRange&) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3468172)
#44 0x00000000034679c3
clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*,
32u>&, clang::Parser::AllowedConstructsKind, clang::SourceLocation*)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x34679c3)
#45 0x000000000346fc03 clang::Parser::ParseCompoundStatementBody(bool)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x346fc03)
#46 0x0000000003470660 clang::Parser::ParseFunctionStatementBody(clang::Decl*,
clang::Parser::ParseScope&) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3470660)
#47 0x00000000033d66bb
clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&,
clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x33d66bb)
#48 0x00000000033eff9e clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&,
clang::DeclaratorContext, clang::SourceLocation*, clang::Parser::ForRangeInit*)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x33eff9e)
#49 0x00000000033d55a9
clang::Parser::ParseDeclOrFunctionDefInternal(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec&, clang::AccessSpecifier) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x33d55a9)
#50 0x00000000033d5043
clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*, clang::AccessSpecifier) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x33d5043)
#51 0x00000000033d3624
clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x33d3624)
#52 0x00000000034053e3
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+++0x34053e3)
#53 0x0000000003404be1 clang::Parser::ParseNamespace(clang::DeclaratorContext,
clang::SourceLocation&, clang::SourceLocation) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x3404be1)
#54 0x00000000033eb949
clang::Parser::ParseDeclaration(clang::DeclaratorContext,
clang::SourceLocation&, clang::Parser::ParsedAttributesWithRange&)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x33eb949)
#55 0x00000000033d2cda
clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*) (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x33d2cda)
#56 0x00000000033d235b
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x33d235b)
#57 0x00000000033cd0d6 clang::ParseAST(clang::Sema&, bool, bool)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x33cd0d6)
#58 0x00000000028352f0 clang::FrontendAction::Execute() (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x28352f0)
#59 0x00000000027dd641
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x27dd641)
#60 0x00000000028d5769
clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
(../../third_party/llvm-build/Release+Asserts/bin/clang+++0x28d5769)
#61 0x00000000008ec1d3 cc1_main(llvm::ArrayRef<char const*>, char const*,
void*) (../../third_party/llvm-build/Release+Asserts/bin/clang+++0x8ec1d3)
#62 0x00000000008e99b5 main (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x8e99b5)
#63 0x00007f87bfb6f2b1 __libc_start_main (/lib/x86_64-linux-
gnu/libc.so.6+0x202b1)
#64 0x00000000008e69ad _start (../../third_party/llvm-
build/Release+Asserts/bin/clang+++0x8e69ad)
clang++: error: unable to execute command: Aborted
clang++: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 8.0.0 (trunk 344066)
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:
Quuxplusone commented 6 years ago

Attached paint_cache-70b05b.sh (13955 bytes, application/x-shellscript): run script