Skip to content

Instantly share code, notes, and snippets.

@nicolas17
Created February 22, 2020 03:50
Show Gist options
  • Save nicolas17/cf3844c32231390222e7eb73be2856ad to your computer and use it in GitHub Desktop.
Save nicolas17/cf3844c32231390222e7eb73be2856ad to your computer and use it in GitHub Desktop.
class {
a(struct b
struct b ;
$ /home/nicolas/src/llvm/build/llvm/bin/clang-11 -fsyntax-only viewmodeE.cpp
viewmodeE.cpp:2:14: error: expected ';' after struct
a(struct b
^
;
viewmodeE.cpp:3:3: error: expected ')'
struct b ;
^
viewmodeE.cpp:2:5: note: to match this '('
a(struct b
^
viewmodeE.cpp:2:4: error: C++ requires a type specifier for all declarations
a(struct b
^
viewmodeE.cpp:3:10: error: 'b' redeclared with 'private' access
struct b ;
^
Invalid access specifier!
UNREACHABLE executed at ../clang/lib/AST/DeclCXX.cpp:3165!
Stack dump:
0. Program arguments: /home/nicolas/src/llvm/build/llvm/bin/clang-11 -fsyntax-only viewmodeE.cpp
1. viewmodeE.cpp:3:14: current parser token ';'
2. viewmodeE.cpp:1:1: parsing struct/union/class body '(anonymous)'
#0 0x00007f6967098649 llvm::sys::PrintStackTrace(llvm::raw_ostream&) /home/nicolas/src/llvm/build/../llvm/lib/Support/Unix/Signals.inc:564:11
#1 0x00007f69670987f9 PrintStackTraceSignalHandler(void*) /home/nicolas/src/llvm/build/../llvm/lib/Support/Unix/Signals.inc:625:1
#2 0x00007f6967096f86 llvm::sys::RunSignalHandlers() /home/nicolas/src/llvm/build/../llvm/lib/Support/Signals.cpp:67:5
#3 0x00007f6967097f10 llvm::sys::CleanupOnSignal(unsigned long) /home/nicolas/src/llvm/build/../llvm/lib/Support/Unix/Signals.inc:362:1
#4 0x00007f6966f05999 (anonymous namespace)::CrashRecoveryContextImpl::HandleCrash(int, unsigned long) /home/nicolas/src/llvm/build/../llvm/lib/Support/CrashRecoveryContext.cpp:77:20
#5 0x00007f6966f05c2a CrashRecoverySignalHandler(int) /home/nicolas/src/llvm/build/../llvm/lib/Support/CrashRecoveryContext.cpp:383:1
#6 0x00007f696652a730 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12730)
#7 0x00007f6963d047bb raise /build/glibc-vjB4T1/glibc-2.28/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
#8 0x00007f6963cef535 abort /build/glibc-vjB4T1/glibc-2.28/stdlib/abort.c:81:7
#9 0x00007f6966f20c00 llvm::install_out_of_memory_new_handler() /home/nicolas/src/llvm/build/../llvm/lib/Support/ErrorHandling.cpp:192:0
#10 0x00007f6961730041 getAccessName(clang::AccessSpecifier) /home/nicolas/src/llvm/build/../clang/lib/AST/DeclCXX.cpp:3167:7
#11 0x00007f696172ffd1 clang::operator<<(clang::DiagnosticBuilder const&, clang::AccessSpecifier) /home/nicolas/src/llvm/build/../clang/lib/AST/DeclCXX.cpp:3178:13
#12 0x00007f695ef5c467 clang::Sema::SemaDiagnosticBuilder const& clang::operator<<<clang::AccessSpecifier>(clang::Sema::SemaDiagnosticBuilder const&, clang::AccessSpecifier const&) /home/nicolas/src/llvm/build/../clang/include/clang/Sema/Sema.h:1431:14
#13 0x00007f695ef559ef clang::Sema::SetMemberAccessSpecifier(clang::NamedDecl*, clang::NamedDecl*, clang::AccessSpecifier) /home/nicolas/src/llvm/build/../clang/lib/Sema/SemaAccess.cpp:54:5
#14 0x00007f695f229e4e clang::Sema::ActOnTag(clang::Scope*, unsigned int, clang::Sema::TagUseKind, clang::SourceLocation, clang::CXXScopeSpec&, clang::IdentifierInfo*, clang::SourceLocation, clang::ParsedAttributesView const&, clang::AccessSpecifier, clang::SourceLocation, llvm::MutableArrayRef<clang::TemplateParameterList*>, bool&, bool&, clang::SourceLocation, bool, clang::ActionResult<clang::OpaquePtr<clang::QualType>, false>, bool, bool, clang::Sema::SkipBodyInfo*) /home/nicolas/src/llvm/build/../clang/lib/Sema/SemaDecl.cpp:15841:5
#15 0x00007f6960486656 clang::Parser::ParseClassSpecifier(clang::tok::TokenKind, clang::SourceLocation, clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, bool, clang::Parser::DeclSpecContext, clang::Parser::ParsedAttributesWithRange&) /home/nicolas/src/llvm/build/../clang/lib/Parse/ParseDeclCXX.cpp:1932:21
#16 0x00007f6960453034 clang::Parser::ParseDeclarationSpecifiers(clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, clang::Parser::DeclSpecContext, clang::Parser::LateParsedAttrList*) /home/nicolas/src/llvm/build/../clang/lib/Parse/ParseDecl.cpp:3939:12
#17 0x00007f696048adaf clang::Parser::ParseCXXClassMemberDeclaration(clang::AccessSpecifier, clang::ParsedAttributes&, clang::Parser::ParsedTemplateInfo const&, clang::ParsingDeclRAIIObject*) /home/nicolas/src/llvm/build/../clang/lib/Parse/ParseDeclCXX.cpp:2614:5
#18 0x00007f696048d306 clang::Parser::ParseCXXClassMemberDeclarationWithPragmas(clang::AccessSpecifier&, clang::Parser::ParsedAttributesWithRange&, clang::TypeSpecifierType, clang::Decl*) /home/nicolas/src/llvm/build/../clang/lib/Parse/ParseDeclCXX.cpp:3157:12
#19 0x00007f69604881fa clang::Parser::ParseCXXMemberSpecification(clang::SourceLocation, clang::SourceLocation, clang::Parser::ParsedAttributesWithRange&, unsigned int, clang::Decl*) /home/nicolas/src/llvm/build/../clang/lib/Parse/ParseDeclCXX.cpp:3337:7
#20 0x00007f6960486915 clang::Parser::ParseClassSpecifier(clang::tok::TokenKind, clang::SourceLocation, clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, bool, clang::Parser::DeclSpecContext, clang::Parser::ParsedAttributesWithRange&) /home/nicolas/src/llvm/build/../clang/lib/Parse/ParseDeclCXX.cpp:1959:7
#21 0x00007f6960453034 clang::Parser::ParseDeclarationSpecifiers(clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, clang::Parser::DeclSpecContext, clang::Parser::LateParsedAttrList*) /home/nicolas/src/llvm/build/../clang/lib/Parse/ParseDecl.cpp:3939:12
#22 0x00007f6960559d4d clang::Parser::ParseDeclOrFunctionDefInternal(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec&, clang::AccessSpecifier) /home/nicolas/src/llvm/build/../clang/lib/Parse/Parser.cpp:1020:7
#23 0x00007f6960559940 clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec*, clang::AccessSpecifier) /home/nicolas/src/llvm/build/../clang/lib/Parse/Parser.cpp:1125:12
#24 0x00007f69605591ee clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&, clang::ParsingDeclSpec*) /home/nicolas/src/llvm/build/../clang/lib/Parse/Parser.cpp:945:12
#25 0x00007f69605574ae clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, bool) /home/nicolas/src/llvm/build/../clang/lib/Parse/Parser.cpp:696:12
#26 0x00007f6960556c93 clang::Parser::ParseFirstTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&) /home/nicolas/src/llvm/build/../clang/lib/Parse/Parser.cpp:564:8
#27 0x00007f696043213f clang::ParseAST(clang::Sema&, bool, bool) /home/nicolas/src/llvm/build/../clang/lib/Parse/ParseAST.cpp:157:15
#28 0x00007f6964a91022 clang::ASTFrontendAction::ExecuteAction() /home/nicolas/src/llvm/build/../clang/lib/Frontend/FrontendAction.cpp:1049:1
#29 0x00007f6964a909d1 clang::FrontendAction::Execute() /home/nicolas/src/llvm/build/../clang/lib/Frontend/FrontendAction.cpp:944:7
#30 0x00007f6964a0516e clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) /home/nicolas/src/llvm/build/../clang/lib/Frontend/CompilerInstance.cpp:969:23
#31 0x00007f696478ab4f clang::ExecuteCompilerInvocation(clang::CompilerInstance*) /home/nicolas/src/llvm/build/../clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:292:8
#32 0x0000000000428838 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) /home/nicolas/src/llvm/build/../clang/tools/driver/cc1_main.cpp:240:13
#33 0x000000000041c3c6 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&) /home/nicolas/src/llvm/build/../clang/tools/driver/driver.cpp:328:5
#34 0x00007f6964e19c68 clang::driver::CC1Command::Execute(llvm::ArrayRef<llvm::Optional<llvm::StringRef> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, bool*) const::$_1::operator()() const /home/nicolas/src/llvm/build/../clang/lib/Driver/Job.cpp:417:30
#35 0x00007f6964e19c35 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<llvm::Optional<llvm::StringRef> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, bool*) const::$_1>(long) /home/nicolas/src/llvm/build/../llvm/include/llvm/ADT/STLExtras.h:108:5
#36 0x00007f6966f05fa9 llvm::function_ref<void ()>::operator()() const /home/nicolas/src/llvm/build/../llvm/include/llvm/ADT/STLExtras.h:124:5
#37 0x00007f6966f05781 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) /home/nicolas/src/llvm/build/../llvm/lib/Support/CrashRecoveryContext.cpp:419:3
#38 0x00007f6964e190f3 clang::driver::CC1Command::Execute(llvm::ArrayRef<llvm::Optional<llvm::StringRef> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, bool*) const /home/nicolas/src/llvm/build/../clang/lib/Driver/Job.cpp:417:7
#39 0x00007f6964db6a28 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&) const /home/nicolas/src/llvm/build/../clang/lib/Driver/Compilation.cpp:182:7
#40 0x00007f6964db6c0b clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*> >&) const /home/nicolas/src/llvm/build/../clang/lib/Driver/Compilation.cpp:233:13
#41 0x00007f6964dd53c5 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*> >&) /home/nicolas/src/llvm/build/../clang/lib/Driver/Driver.cpp:1479:7
#42 0x000000000041bdc6 main /home/nicolas/src/llvm/build/../clang/tools/driver/driver.cpp:496:9
#43 0x00007f6963cf109b __libc_start_main /build/glibc-vjB4T1/glibc-2.28/csu/../csu/libc-start.c:342:3
#44 0x000000000041adca _start (/home/nicolas/src/llvm/build/llvm/bin/clang-11+0x41adca)
clang-11: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 11.0.0
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/nicolas/src/llvm/build/llvm/bin
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment