[LLVMbugs] [Bug 8385] New: Assertion `Access != AS_none && "Access specifier is AS_none inside a record decl"' on invalid code

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Oct 15 03:27:06 PDT 2010


http://llvm.org/bugs/show_bug.cgi?id=8385

           Summary: Assertion `Access != AS_none && "Access specifier is
                    AS_none inside a record decl"' on invalid code
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: chris at bubblescope.net
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


The code:

struct{template struct{

Produces the backtrack:

clang: DeclBase.cpp:443: void clang::Decl::CheckAccessDeclContext() const:
Assertion `Access != AS_none && "Access specifier is AS_none inside a record
decl"' failed.     
0  clang           0x000000000165139f
1  clang           0x0000000001653612
2  libpthread.so.0 0x00007f9d331168f0
3  libc.so.6       0x00007f9d32405a75 gsignal + 53
4  libc.so.6       0x00007f9d324095c0 abort + 384
5  libc.so.6       0x00007f9d323fe941 __assert_fail + 241
6  clang           0x0000000000c43d49 clang::Decl::CheckAccessDeclContext()
const + 121
7  clang           0x0000000000938436
clang::Sema::BuildAnonymousStructOrUnion(clang::Scope*, clang::DeclSpec&,
clang::AccessSpecifier, clang::RecordDecl*) + 886
8  clang           0x0000000000939221
clang::Sema::ParsedFreeStandingDeclSpec(clang::Scope*, clang::AccessSpecifier,
clang::DeclSpec&) + 721
9  clang           0x00000000008c5901
clang::Parser::ParseSingleDeclarationAfterTemplate(unsigned int,
clang::Parser::ParsedTemplateInfo const&,
clang::Parser::ParsingDeclRAIIObject&, clang::SourceLocation&,
clang::AccessSpecifier) + 2065
10 clang           0x00000000008c5cd7
clang::Parser::ParseExplicitInstantiation(clang::SourceLocation,
clang::SourceLocation, clang::SourceLocation&) + 119
11 clang           0x00000000008afa2f
clang::Parser::ParseCXXClassMemberDeclaration(clang::AccessSpecifier,
clang::Parser::ParsedTemplateInfo const&,
clang::Parser::ParsingDeclRAIIObject*) + 2399
12 clang           0x00000000008b1c0f
clang::Parser::ParseCXXMemberSpecification(clang::SourceLocation, unsigned int,
clang::Decl*) + 1599
13 clang           0x00000000008b2ad0
clang::Parser::ParseClassSpecifier(clang::tok::TokenKind,
clang::SourceLocation, clang::DeclSpec&, clang::Parser::ParsedTemplateInfo
const&, clang::AccessSpecifier, bool) + 2800
14 clang           0x00000000008a298c
clang::Parser::ParseDeclarationSpecifiers(clang::DeclSpec&,
clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier,
clang::Parser::DeclSpecContext) + 1996
15 clang           0x000000000089a896
clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsingDeclSpec&,
clang::AttributeList*, clang::AccessSpecifier) + 150
16 clang           0x000000000089ace4
clang::Parser::ParseDeclarationOrFunctionDefinition(clang::AttributeList*,
clang::AccessSpecifier) + 372
17 clang           0x000000000089cc25
clang::Parser::ParseExternalDeclaration(clang::CXX0XAttributeList,
clang::Parser::ParsingDeclSpec*) + 1333
18 clang           0x000000000089cd72
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&) + 114
19 clang           0x00000000008854fb clang::ParseAST(clang::Sema&, bool) + 139
20 clang           0x000000000075b444 clang::CodeGenAction::ExecuteAction() +
68
21 clang           0x0000000000661165
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 357
22 clang           0x0000000000640c5c
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 1276
23 clang           0x0000000000638c1e cc1_main(char const**, char const**, char
const*, void*) + 622
24 clang           0x000000000063f777 main + 4087
25 libc.so.6       0x00007f9d323f0c4d __libc_start_main + 253
26 clang           0x0000000000637409
Stack dump:
0.      Program arguments: /usr/local/bin/clang -cc1 -triple
x86_64-unknown-linux-gnu -S -disable-free -main-file-name t.bashed.16288.cc
-mrelocation-model static -mdisable-fp-elim -mconstructor-aliases
-munwind-tables -target-cpu x86-64 -target-linker-version 2.20.1 -resource-dir
/usr/local/lib/clang/2.9 -ferror-limit 19 -fmessage-length 171 -fexceptions
-fgnu-runtime -fdiagnostics-show-option -fcolor-diagnostics -o /tmp/cc-nWJ8j3.s
-x c++ t.bashed.16288.cc 
1.      <eof> parser at end of file
2.      t.bashed.16288.cc:1:1: parsing struct/union/class body
clang: error: clang frontend command failed due to signal 6 (use -v to see
invocation)

-- 
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.



More information about the llvm-bugs mailing list