Skip to content

Commit 8503265

Browse files
[swiftc (137 vs. 5189)] Add crasher in swift::ASTVisitor
Add test case for crash triggered in `swift::ASTVisitor`. Current number of unresolved compiler crashers: 137 (5189 resolved) Stack trace: ``` 0 0x00000000031d7558 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x31d7558) 1 0x00000000031d7da6 SignalHandler(int) (/path/to/swift/bin/swift+0x31d7da6) 2 0x00007fedbbea6330 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x10330) 3 0x0000000000d2654e swift::ASTVisitor<(anonymous namespace)::PrintTypeRepr, void, void, void, void, void, void>::visit(swift::TypeRepr*) (/path/to/swift/bin/swift+0xd2654e) 4 0x0000000000d2b0aa (anonymous namespace)::PrintTypeRepr::printRec(swift::TypeRepr*) (/path/to/swift/bin/swift+0xd2b0aa) 5 0x0000000000d2b355 (anonymous namespace)::PrintTypeRepr::visitIdentTypeRepr(swift::IdentTypeRepr*) (/path/to/swift/bin/swift+0xd2b355) 6 0x0000000000d2dea8 (anonymous namespace)::PrintDecl::printAbstractFunctionDecl(swift::AbstractFunctionDecl*) (/path/to/swift/bin/swift+0xd2dea8) 7 0x0000000000d1f4d5 swift::ASTVisitor<(anonymous namespace)::PrintDecl, void, void, void, void, void, void>::visit(swift::Decl*) (/path/to/swift/bin/swift+0xd1f4d5) 8 0x0000000000d2e35a (anonymous namespace)::PrintDecl::printRec(swift::Decl*) (/path/to/swift/bin/swift+0xd2e35a) 9 0x0000000000d2e20c (anonymous namespace)::PrintDecl::printAccessors(swift::AbstractStorageDecl*) (/path/to/swift/bin/swift+0xd2e20c) 10 0x0000000000d1f537 swift::ASTVisitor<(anonymous namespace)::PrintDecl, void, void, void, void, void, void>::visit(swift::Decl*) (/path/to/swift/bin/swift+0xd1f537) 11 0x0000000000d1d558 swift::Decl::dump(llvm::raw_ostream&, unsigned int) const (/path/to/swift/bin/swift+0xd1d558) 12 0x0000000000d2c4ff (anonymous namespace)::PrintStmt::printASTNodes(llvm::ArrayRef<swift::ASTNode> const&, llvm::StringRef) (/path/to/swift/bin/swift+0xd2c4ff) 13 0x0000000000d20e0b swift::ASTVisitor<(anonymous namespace)::PrintStmt, void, void, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0xd20e0b) 14 0x0000000000d2525a swift::ASTVisitor<(anonymous namespace)::PrintExpr, void, void, void, void, void, void>::visit(swift::Expr*) (/path/to/swift/bin/swift+0xd2525a) 15 0x0000000000d20773 swift::ASTVisitor<(anonymous namespace)::PrintPattern, void, void, void, void, void, void>::visit(swift::Pattern*) (/path/to/swift/bin/swift+0xd20773) 16 0x0000000000d2fa5a (anonymous namespace)::PrintPattern::printRec(swift::Pattern const*) (/path/to/swift/bin/swift+0xd2fa5a) 17 0x0000000000d209e2 swift::ASTVisitor<(anonymous namespace)::PrintPattern, void, void, void, void, void, void>::visit(swift::Pattern*) (/path/to/swift/bin/swift+0xd209e2) 18 0x0000000000d2c62a (anonymous namespace)::PrintStmt::printRec(swift::Pattern const*) (/path/to/swift/bin/swift+0xd2c62a) 19 0x0000000000d2c710 (anonymous namespace)::PrintStmt::printRec(swift::StmtConditionElement) (/path/to/swift/bin/swift+0xd2c710) 20 0x0000000000d213cc swift::ASTVisitor<(anonymous namespace)::PrintStmt, void, void, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0xd213cc) 21 0x0000000000d20d8d swift::Stmt::print(llvm::raw_ostream&, unsigned int) const (/path/to/swift/bin/swift+0xd20d8d) 22 0x0000000000d5ed55 (anonymous namespace)::Verifier::checkSourceRanges(swift::SourceRange, swift::ASTWalker::ParentTy, std::function<void ()>) (/path/to/swift/bin/swift+0xd5ed55) 23 0x0000000000d6254f (anonymous namespace)::Verifier::checkSourceRanges(swift::Stmt*) (/path/to/swift/bin/swift+0xd6254f) 24 0x0000000000d58b2c (anonymous namespace)::Verifier::walkToStmtPost(swift::Stmt*) (/path/to/swift/bin/swift+0xd58b2c) 25 0x0000000000d69360 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0xd69360) 26 0x0000000000d6c153 (anonymous namespace)::Traversal::visit(swift::Expr*) (/path/to/swift/bin/swift+0xd6c153) 27 0x0000000000d693df swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0xd693df) 28 0x0000000000d67c7e (anonymous namespace)::Traversal::doIt(swift::Decl*) (/path/to/swift/bin/swift+0xd67c7e) 29 0x0000000000d67894 swift::Decl::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0xd67894) 30 0x0000000000dbd2fe swift::SourceFile::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0xdbd2fe) 31 0x0000000000d4f48c swift::verify(swift::SourceFile&) (/path/to/swift/bin/swift+0xd4f48c) 32 0x0000000000afce93 swift::Parser::parseTopLevel() (/path/to/swift/bin/swift+0xafce93) 33 0x0000000000b34320 swift::parseIntoSourceFile(swift::SourceFile&, unsigned int, bool*, swift::SILParserState*, swift::PersistentParserState*, swift::DelayedParsingCallbacks*) (/path/to/swift/bin/swift+0xb34320) 34 0x0000000000939283 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0x939283) 35 0x000000000047f2b5 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x47f2b5) 36 0x000000000047e14f swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x47e14f) 37 0x000000000044509a main (/path/to/swift/bin/swift+0x44509a) 38 0x00007fedba64ff45 __libc_start_main /build/eglibc-oGUzwX/eglibc-2.19/csu/libc-start.c:321:0 39 0x0000000000442816 _start (/path/to/swift/bin/swift+0x442816) ```
1 parent ce722fe commit 8503265

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// This source file is part of the Swift.org open source project
2+
// Copyright (c) 2014 - 2016 Apple Inc. and the Swift project authors
3+
// Licensed under Apache License v2.0 with Runtime Library Exception
4+
//
5+
// See http://swift.org/LICENSE.txt for license information
6+
// See http://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
7+
8+
// RUN: not --crash %target-swift-frontend %s -emit-ir
9+
{guard let{var E{unsafeAddress{

0 commit comments

Comments
 (0)