Anton Blanchard
b1827d8a8f
Add powerpc64le Linux support
...
This patch adds powerpc64le Linux support. While the patch also adds
the matching powerpc64 bits, there are endian issues that need to be
sorted out.
The PowerPC LLVM changes for the swift ABI (eg returning three element
non-homogeneous aggregates) are still in the works, but a simple LLVM
fix to allow those aggregates results in swift passing all but 8
test cases.
2016-01-15 06:48:31 +00:00
Chris Lattner
b6b113fa8b
Merge pull request #973 from practicalswift/swiftc-28202-swift-typechecker-applygenericarguments
...
[swiftc] Add test case for crash triggered in swift::TypeChecker::applyUnboundGenericArguments(…)
2016-01-14 21:50:53 -08:00
Chris Lattner
f9562dd7be
Merge pull request #978 from ezephir/linux-validation-utfencoders
...
[StdLib] Update requirements for UnicodeUTFEncoders test
2016-01-14 21:48:55 -08:00
Emanuel Zephir
f87ec8c071
[StdLib] Update requirements for UnicodeUTFEncoders test
...
All of the tests in this file need the Objective-C runtime. This change removes
the XFAIL on linux and replaces it with a runtime requirement.
2016-01-14 11:22:26 -08:00
practicalswift
3428de1cf7
[swiftc] Add test case for crash triggered in swift::TypeChecker::applyUnboundGenericArguments(swift::UnboundGenericType*, swift::SourceLoc, swift::DeclContext*, llvm::MutableArrayRef<swift::TypeLoc>, bool, swift::GenericTypeResolver*)
...
Stack trace:
```
swift: /path/to/swift/lib/Sema/TypeCheckGeneric.cpp:835: bool swift::TypeChecker::checkGenericArguments(swift::DeclContext *, swift::SourceLoc, swift::SourceLoc, swift::Type, swift::GenericSignature *, ArrayRef<swift::Type>): Assertion `count == genericArgs.size()' failed.
9 swift 0x0000000000e66a1d swift::TypeChecker::applyUnboundGenericArguments(swift::UnboundGenericType*, swift::SourceLoc, swift::DeclContext*, llvm::MutableArrayRef<swift::TypeLoc>, bool, swift::GenericTypeResolver*) + 589
10 swift 0x0000000000e66680 swift::TypeChecker::applyGenericArguments(swift::Type, swift::SourceLoc, swift::DeclContext*, swift::GenericIdentTypeRepr*, bool, swift::GenericTypeResolver*) + 448
14 swift 0x0000000000e66bde swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
16 swift 0x0000000000e67b14 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
17 swift 0x0000000000e66aea swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
22 swift 0x0000000000e17a01 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 5969
23 swift 0x00000000010048ec swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, unsigned int, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 2908
24 swift 0x00000000010032fd swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool) + 2269
25 swift 0x0000000000e3d3bb swift::TypeChecker::lookupUnqualified(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 187
28 swift 0x0000000000e66bde swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
30 swift 0x0000000000e67b14 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
31 swift 0x0000000000e66aea swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
32 swift 0x0000000000ef50b2 swift::IterativeTypeChecker::processResolveInheritedClauseEntry(std::pair<llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>, unsigned int>, llvm::function_ref<bool (swift::TypeCheckRequest)>) + 146
33 swift 0x0000000000ef433d swift::IterativeTypeChecker::satisfy(swift::TypeCheckRequest) + 493
34 swift 0x0000000000e13119 swift::TypeChecker::resolveInheritanceClause(llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>) + 137
35 swift 0x0000000000e166c1 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1041
39 swift 0x0000000000e66bde swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
41 swift 0x0000000000e67b14 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
42 swift 0x0000000000e66aea swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
45 swift 0x0000000000e1bb96 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150
48 swift 0x0000000000e623fa swift::TypeChecker::typeCheckClosureBody(swift::ClosureExpr*) + 218
49 swift 0x0000000000e8c2cc swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) + 812
50 swift 0x0000000000e00fdb swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 683
53 swift 0x0000000000e6111a swift::TypeChecker::typeCheckFunctionBodyUntil(swift::FuncDecl*, swift::SourceLoc) + 362
54 swift 0x0000000000e60f6e swift::TypeChecker::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc) + 46
55 swift 0x0000000000e61b38 swift::TypeChecker::typeCheckAbstractFunctionBody(swift::AbstractFunctionDecl*) + 136
57 swift 0x0000000000de8282 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1730
58 swift 0x0000000000c9f9b2 swift::CompilerInstance::performSema() + 2946
60 swift 0x0000000000764ccf frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2463
61 swift 0x000000000075f8d5 main + 2741
Stack dump:
0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28202-swift-typechecker-applygenericarguments.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28202-swift-typechecker-applygenericarguments-c0e012.o
1. While type-checking 'a' at validation-test/compiler_crashers/28202-swift-typechecker-applygenericarguments.swift:8:11
2. While type-checking expression at [validation-test/compiler_crashers/28202-swift-typechecker-applygenericarguments.swift:8:18 - line:8:27] RangeText="{func g:A}"
3. While type-checking 'g' at validation-test/compiler_crashers/28202-swift-typechecker-applygenericarguments.swift:8:19
4. While resolving type A at [validation-test/compiler_crashers/28202-swift-typechecker-applygenericarguments.swift:8:26 - line:8:26] RangeText="A"
5. While resolving type e at [validation-test/compiler_crashers/28202-swift-typechecker-applygenericarguments.swift:8:78 - line:8:78] RangeText="e"
6. While type-checking 'A' at validation-test/compiler_crashers/28202-swift-typechecker-applygenericarguments.swift:8:28
7. While resolving type c<T> at [validation-test/compiler_crashers/28202-swift-typechecker-applygenericarguments.swift:8:51 - line:8:54] RangeText="c<T>"
<unknown>:0: error: unable to execute command: Aborted
<unknown>:0: error: compile command failed due to signal (use -v to see invocation)
```
2016-01-14 11:39:10 +01:00
practicalswift
9b409398cb
[swiftc] Add test case for crash triggered in swift::TypeChecker::resolveTypeWitness(swift::NormalProtocolConformance const*, swift::AssociatedTypeDecl*)
...
Stack trace:
```
6 swift 0x0000000000e46131 swift::TypeChecker::resolveTypeWitness(swift::NormalProtocolConformance const*, swift::AssociatedTypeDecl*) + 193
7 swift 0x000000000100d216 swift::NormalProtocolConformance::getTypeWitnessSubstAndDecl(swift::AssociatedTypeDecl*, swift::LazyResolver*) const + 150
8 swift 0x000000000100d158 swift::ProtocolConformance::getTypeWitnessSubstAndDecl(swift::AssociatedTypeDecl*, swift::LazyResolver*) const + 40
9 swift 0x000000000100d926 swift::ProtocolConformance::getTypeWitness(swift::AssociatedTypeDecl*, swift::LazyResolver*) const + 6
10 swift 0x0000000000e3e37e swift::TypeChecker::lookupMemberType(swift::DeclContext*, swift::Type, swift::Identifier, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 1070
12 swift 0x0000000000e66bde swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
14 swift 0x0000000000e67b14 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
15 swift 0x0000000000e66aea swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
16 swift 0x0000000000e1447a swift::TypeChecker::checkInheritanceClause(swift::Decl*, swift::GenericTypeResolver*) + 4890
17 swift 0x0000000000e169d9 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1833
21 swift 0x0000000000e66bde swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
23 swift 0x0000000000e67b14 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
24 swift 0x0000000000e66aea swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
25 swift 0x0000000000ef50b2 swift::IterativeTypeChecker::processResolveInheritedClauseEntry(std::pair<llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>, unsigned int>, llvm::function_ref<bool (swift::TypeCheckRequest)>) + 146
26 swift 0x0000000000ef433d swift::IterativeTypeChecker::satisfy(swift::TypeCheckRequest) + 493
27 swift 0x0000000000e13119 swift::TypeChecker::resolveInheritanceClause(llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>) + 137
28 swift 0x0000000000e166c1 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1041
32 swift 0x0000000000e66bde swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
34 swift 0x0000000000e67b14 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
35 swift 0x0000000000e66aea swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
36 swift 0x0000000000e1447a swift::TypeChecker::checkInheritanceClause(swift::Decl*, swift::GenericTypeResolver*) + 4890
37 swift 0x0000000000e169d9 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1833
40 swift 0x0000000000e1bb96 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150
43 swift 0x0000000000e623fa swift::TypeChecker::typeCheckClosureBody(swift::ClosureExpr*) + 218
44 swift 0x0000000000e8c2cc swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) + 812
45 swift 0x0000000000e00fdb swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 683
47 swift 0x0000000000e62546 swift::TypeChecker::typeCheckTopLevelCodeDecl(swift::TopLevelCodeDecl*) + 134
48 swift 0x0000000000de81ed swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1581
49 swift 0x0000000000c9f9b2 swift::CompilerInstance::performSema() + 2946
51 swift 0x0000000000764ccf frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2463
52 swift 0x000000000075f8d5 main + 2741
Stack dump:
0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28201-swift-typechecker-resolvetypewitness.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28201-swift-typechecker-resolvetypewitness-f22881.o
1. While type-checking expression at [validation-test/compiler_crashers/28201-swift-typechecker-resolvetypewitness.swift:7:1 - line:7:47] RangeText="{class A:a protocol a{typealias e:A}class A:A.e"
2. While type-checking 'A' at validation-test/compiler_crashers/28201-swift-typechecker-resolvetypewitness.swift:7:2
3. While resolving type a at [validation-test/compiler_crashers/28201-swift-typechecker-resolvetypewitness.swift:7:10 - line:7:10] RangeText="a"
4. While resolving type A at [validation-test/compiler_crashers/28201-swift-typechecker-resolvetypewitness.swift:7:35 - line:7:35] RangeText="A"
5. While resolving type A.e at [validation-test/compiler_crashers/28201-swift-typechecker-resolvetypewitness.swift:7:45 - line:7:47] RangeText="A.e"
<unknown>:0: error: unable to execute command: Segmentation fault
<unknown>:0: error: compile command failed due to signal (use -v to see invocation)
```
2016-01-14 11:30:40 +01:00
Doug Gregor
38c1de69e4
Reinstate "[SR-511][Parse] Add 'associatedtype' keyword and fixit"
...
This reverts commit ce7b2bcf09 , tweaking
a few validation tests appropriately (1 crasher fixed, two -verify
tests that needed updating).
2016-01-14 00:21:48 -08:00
practicalswift
19fdd8fd0d
[gardening] Fix recently introduced typo.
2016-01-13 13:49:11 +01:00
Slava Pestov
e711d5e427
Preliminary evolution tests
...
Checking these in to get some discussion over FileCheck style and
test file structure going before I write too many more tests.
2016-01-13 01:32:27 -08:00
Jordan Rose
ad945426a0
Teach the frontend about -filelist for input files.
...
With this, we're out of the business of passing large numbers of input
files on the command line to the frontend, which means we no longer
overflow argv with a mere 1100 input files under whole-module optimization.
In order to make sure this doesn't happen again, I'd like to also get
this working for
- swiftmodule inputs to the merge-module build phase
- /output/ files for multithreading single-frontend builds (WMO)
- object file inputs to the linker on OS X (response files for binutils
ld have different quoting rules)
Part 3 of https://bugs.swift.org/browse/SR-280 .
2016-01-12 19:20:50 -08:00
Chris Lattner
8bac0868c3
My changes fixed this test, and swift-ide-test is returning a successful exit code,
...
I should have removed the "not" as well as the --crash.
2016-01-12 16:04:40 -08:00
Dmitri Gribenko
2d094d0ac8
Merge pull request #944 from practicalswift/swiftc-28200-swift-typebase-getdesugaredtype
...
[swiftc] Add test case for crash triggered in swift::TypeBase::getDesugaredType()
2016-01-12 11:34:49 -08:00
Ben Langmuir
93e3c72883
[swift-ide-test] Don't go past the end of input in removeCodeCompletionTokens
...
When matching an incomplete code-completion token #^...
2016-01-12 11:28:11 -08:00
practicalswift
ab78cadeff
[swiftc] Add test case for crash triggered in swift::TypeBase::getDesugaredType()
...
Stack trace:
```
4 swift 0x0000000001019a40 swift::TypeBase::getDesugaredType() + 32
5 swift 0x0000000000e89d9c swift::constraints::Solution::computeSubstitutions(swift::Type, swift::DeclContext*, swift::Type, swift::constraints::ConstraintLocator*, llvm::SmallVectorImpl<swift::Substitution>&) const + 828
9 swift 0x0000000000f6eb55 swift::Expr::walk(swift::ASTWalker&) + 69
10 swift 0x0000000000e8db66 swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) + 502
11 swift 0x0000000000e006ab swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 683
16 swift 0x0000000000ea8d28 swift::constraints::ConstraintSystem::diagnoseFailureForExpr(swift::Expr*) + 104
17 swift 0x0000000000ead62e swift::constraints::ConstraintSystem::salvage(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::Expr*) + 4046
18 swift 0x0000000000dfa2a5 swift::TypeChecker::solveForExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::FreeTypeVariableBinding, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem&, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>) + 661
19 swift 0x0000000000e00639 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 569
20 swift 0x0000000000e017b0 swift::TypeChecker::typeCheckBinding(swift::Pattern*&, swift::Expr*&, swift::DeclContext*) + 112
21 swift 0x0000000000e01959 swift::TypeChecker::typeCheckPatternBinding(swift::PatternBindingDecl*, unsigned int) + 265
26 swift 0x0000000000e1b266 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150
27 swift 0x0000000000de77a2 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1474
28 swift 0x0000000000c9f042 swift::CompilerInstance::performSema() + 2946
30 swift 0x00000000007645a2 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2482
31 swift 0x000000000075f181 main + 2705
Stack dump:
0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28200-swift-typebase-getdesugaredtype.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28200-swift-typebase-getdesugaredtype-20fee1.o
1. While type-checking 'S' at validation-test/compiler_crashers/28200-swift-typebase-getdesugaredtype.swift:7:1
2. While type-checking expression at [validation-test/compiler_crashers/28200-swift-typebase-getdesugaredtype.swift:8:7 - line:8:9] RangeText="c<T"
3. While type-checking expression at [validation-test/compiler_crashers/28200-swift-typebase-getdesugaredtype.swift:8:7 - line:8:7] RangeText="c"
<unknown>:0: error: unable to execute command: Segmentation fault
<unknown>:0: error: compile command failed due to signal (use -v to see invocation)
```
2016-01-12 19:04:56 +01:00
Maxim Moiseev
e8886a4ffa
Merge pull request #920 from practicalswift/gyb-fixes
...
[gardening] Clean up .gyb-files: Remove unused imports. Non-controversial PEP8 fixes.
2016-01-12 09:27:48 -08:00
Dmitri Gribenko
755156a19f
Merge pull request #942 from practicalswift/swiftc-28199-swift-constraints-constraintsystem-performmemberlookup
...
[swiftc] Add test case for crash triggered in swift::constraints::ConstraintSystem::performMemberLookup(…)
2016-01-12 08:50:06 -08:00
Erik Eckstein
206d410cdc
disable an IDE test to unblock the bots
2016-01-12 08:13:46 -08:00
Chris Lattner
2f78b70857
recent diagnostics changes fixed 5 crashers and broke 1.
2016-01-11 22:43:27 -08:00
practicalswift
a4a2f96a2e
[swiftc] Add test case for crash triggered in swift::constraints::ConstraintSystem::performMemberLookup(swift::constraints::ConstraintKind, swift::DeclName, swift::Type, swift::constraints::ConstraintLocator*)
...
Stack trace:
```
swift: /path/to/swift/include/swift/AST/Decl.h:2191: swift::Type swift::ValueDecl::getType() const: Assertion `hasType() && "declaration has no type set yet"' failed.
9 swift 0x0000000000edd28f swift::constraints::ConstraintSystem::performMemberLookup(swift::constraints::ConstraintKind, swift::DeclName, swift::Type, swift::constraints::ConstraintLocator*) + 3119
10 swift 0x0000000000ede9fa swift::constraints::ConstraintSystem::simplifyMemberConstraint(swift::constraints::Constraint const&) + 458
11 swift 0x0000000000ee0235 swift::constraints::ConstraintSystem::simplifyConstraint(swift::constraints::Constraint const&) + 69
12 swift 0x0000000000e81d47 swift::constraints::ConstraintSystem::addConstraint(swift::constraints::Constraint*, bool, bool) + 23
15 swift 0x0000000000f6eb55 swift::Expr::walk(swift::ASTWalker&) + 69
16 swift 0x0000000000ec0898 swift::constraints::ConstraintSystem::generateConstraints(swift::Expr*) + 200
17 swift 0x0000000000dfa110 swift::TypeChecker::solveForExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::FreeTypeVariableBinding, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem&, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>) + 256
18 swift 0x0000000000e00639 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 569
19 swift 0x0000000000e017b0 swift::TypeChecker::typeCheckBinding(swift::Pattern*&, swift::Expr*&, swift::DeclContext*) + 112
20 swift 0x0000000000e01959 swift::TypeChecker::typeCheckPatternBinding(swift::PatternBindingDecl*, unsigned int) + 265
22 swift 0x0000000000e168a4 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 3876
23 swift 0x000000000100595c swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, unsigned int, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 2908
24 swift 0x000000000100436d swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool) + 2269
25 swift 0x0000000000e3ca8b swift::TypeChecker::lookupUnqualified(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 187
28 swift 0x0000000000e6611e swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
30 swift 0x0000000000e67024 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
31 swift 0x0000000000e6602a swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
32 swift 0x0000000000e13b4a swift::TypeChecker::checkInheritanceClause(swift::Decl*, swift::GenericTypeResolver*) + 4890
33 swift 0x0000000000e160a9 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1833
34 swift 0x000000000100595c swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, unsigned int, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 2908
35 swift 0x000000000100436d swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool) + 2269
36 swift 0x0000000000e3ca8b swift::TypeChecker::lookupUnqualified(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 187
39 swift 0x0000000000e6611e swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
41 swift 0x0000000000e67024 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
42 swift 0x0000000000e6602a swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
43 swift 0x0000000000e13b4a swift::TypeChecker::checkInheritanceClause(swift::Decl*, swift::GenericTypeResolver*) + 4890
44 swift 0x0000000000e160a9 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1833
49 swift 0x0000000000e1b266 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150
50 swift 0x0000000000de77a2 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1474
51 swift 0x0000000000c9f042 swift::CompilerInstance::performSema() + 2946
53 swift 0x00000000007645a2 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2482
54 swift 0x000000000075f181 main + 2705
Stack dump:
0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28199-swift-constraints-constraintsystem-performmemberlookup.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28199-swift-constraints-constraintsystem-performmemberlookup-bedf87.o
1. While type-checking 'A' at validation-test/compiler_crashers/28199-swift-constraints-constraintsystem-performmemberlookup.swift:8:1
2. While resolving type A at [validation-test/compiler_crashers/28199-swift-constraints-constraintsystem-performmemberlookup.swift:9:12 - line:9:12] RangeText="A"
3. While resolving type e at [validation-test/compiler_crashers/28199-swift-constraints-constraintsystem-performmemberlookup.swift:10:9 - line:10:9] RangeText="e"
4. While type-checking expression at [validation-test/compiler_crashers/28199-swift-constraints-constraintsystem-performmemberlookup.swift:9:20 - line:9:22] RangeText="A.e"
<unknown>:0: error: unable to execute command: Aborted
<unknown>:0: error: compile command failed due to signal (use -v to see invocation)
```
2016-01-12 07:13:49 +01:00
Chris Lattner
8d835dee7c
My diagnostics fix fixed this test along the way.
2016-01-11 20:47:47 -08:00
Doug Gregor
ab35b15fe4
Merge pull request #932 from practicalswift/swiftc-28197-swift-typebase-getdesugaredtype
...
[swiftc] Add test case for crash triggered in swift::TypeBase::getDesugaredType()
2016-01-11 20:34:32 -08:00
practicalswift
d32f31b2c9
Add two crash cases.
...
These two cases were previously timeout cases (infinite running time) and
hence not included in validation-test/compiler_crashers/
2016-01-12 00:08:29 +01:00
practicalswift
0f66758fbf
[swiftc] Add test case for crash triggered in swift::TypeBase::getDesugaredType()
...
Stack trace:
```
4 swift 0x0000000001019520 swift::TypeBase::getDesugaredType() + 32
9 swift 0x0000000001026b95 swift::Type::walk(swift::TypeWalker&) const + 21
10 swift 0x000000000101651f swift::Type::findIf(std::function<bool (swift::Type)> const&) const + 31
14 swift 0x0000000000e453bf swift::TypeChecker::checkConformance(swift::NormalProtocolConformance*) + 1279
17 swift 0x0000000000e1b266 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150
20 swift 0x0000000000e61b2a swift::TypeChecker::typeCheckClosureBody(swift::ClosureExpr*) + 218
21 swift 0x0000000000e8dc6c swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) + 812
22 swift 0x0000000000e0067b swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 683
23 swift 0x0000000000e01780 swift::TypeChecker::typeCheckBinding(swift::Pattern*&, swift::Expr*&, swift::DeclContext*) + 112
24 swift 0x0000000000e01929 swift::TypeChecker::typeCheckPatternBinding(swift::PatternBindingDecl*, unsigned int) + 265
26 swift 0x0000000000e168a4 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 3876
27 swift 0x000000000100544c swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, unsigned int, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 2908
28 swift 0x0000000001003e5d swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool) + 2269
29 swift 0x0000000000e3ca8b swift::TypeChecker::lookupUnqualified(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 187
32 swift 0x0000000000e6617e swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
34 swift 0x0000000000e67084 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
35 swift 0x0000000000e6608a swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
36 swift 0x0000000000ef6242 swift::IterativeTypeChecker::processResolveInheritedClauseEntry(std::pair<llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>, unsigned int>, llvm::function_ref<bool (swift::TypeCheckRequest)>) + 146
37 swift 0x0000000000ef54cd swift::IterativeTypeChecker::satisfy(swift::TypeCheckRequest) + 493
38 swift 0x0000000000e127b9 swift::TypeChecker::resolveInheritanceClause(llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>) + 137
39 swift 0x0000000000e15d91 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1041
44 swift 0x0000000000e1b266 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150
45 swift 0x0000000000de7482 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1474
46 swift 0x0000000000c9eed2 swift::CompilerInstance::performSema() + 2946
48 swift 0x0000000000764692 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2482
49 swift 0x000000000075f271 main + 2705
Stack dump:
0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28197-swift-typebase-getdesugaredtype.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28197-swift-typebase-getdesugaredtype-7a0037.o
1. While type-checking 'a' at validation-test/compiler_crashers/28197-swift-typebase-getdesugaredtype.swift:7:1
2. While resolving type d at [validation-test/compiler_crashers/28197-swift-typebase-getdesugaredtype.swift:7:32 - line:7:32] RangeText="d"
3. While type-checking expression at [validation-test/compiler_crashers/28197-swift-typebase-getdesugaredtype.swift:7:46 - line:7:55] RangeText="{class b:P"
4. While type-checking 'b' at validation-test/compiler_crashers/28197-swift-typebase-getdesugaredtype.swift:7:47
<unknown>:0: error: unable to execute command: Segmentation fault
<unknown>:0: error: compile command failed due to signal (use -v to see invocation)
```
2016-01-10 12:05:10 +01:00
Slava Pestov
cbb95a2910
Merge pull request #926 from jtbandes/innermost-params
...
[AST] Fix inconsistent handling of generic args & params during BoundGenericType::getSubstitutions
2016-01-09 23:30:06 -08:00
Slava Pestov
8b57337ca6
Merge pull request #910 from jtbandes/invalid-proto
...
[Sema] Improve handling of invalid protocols during conformance checking
2016-01-09 23:27:41 -08:00
Chris Lattner
2f4bec9e8c
subsume the "startsWithGreater" logic into skipUntilGreaterInTypeList, and make sure skipUntilGreaterInTypeList return a valid location even in the case of parse errors. This ensures that we form a valid source range. Also, improve parseExprIdentifier() to handle the case when skipUntilGreaterInTypeList returns an empty archetype argument list. This fixes a couple of compiler crashers.
2016-01-09 20:36:05 -08:00
Chris Lattner
f796899123
subsume the "startsWithGreater" logic into skipUntilGreaterInTypeList, and
...
make sure skipUntilGreaterInTypeList return a valid location even in the case
of parse errors. This ensures that we form a valid source range. Also,
improve parseExprIdentifier() to handle the case when skipUntilGreaterInTypeList
returns an empty archetype argument list. This fixes a couple of compiler
crashers.
2016-01-09 20:36:05 -08:00
Chris Lattner
926adfe7e4
Merge pull request #925 from jtbandes/lvalue-errortype
...
[Sema] Skip ErrorTypes in potential bindings during constraint solving
2016-01-09 20:19:39 -08:00
Chris Lattner
d9b2fe601b
fix a compiler crash in error recovery that @practicalswift just reported.
2016-01-09 20:17:56 -08:00
Chris Lattner
0fbbf59f95
Merge pull request #927 from practicalswift/swiftc-28196-swift-constraints-constraintgraph-addconstraint
...
[swiftc] Add test case for crash triggered in swift::constraints::ConstraintGraph::addConstraint(…)
2016-01-09 20:13:05 -08:00
Chris Lattner
11fda96b85
When we detect a property/subscript that has a setter without a getter, create a dummy
...
getter to avoid breaking downstream invariants. This fixes three crashers, including
one added by @practicalswift yesterday.
2016-01-09 11:38:08 -08:00
Chris Lattner
9b5fa7935c
Merge pull request #924 from jtbandes/fix-curriedself
...
[Sema] Fix crash in addCurriedSelfType
2016-01-09 11:18:58 -08:00
practicalswift
6eb765688b
[swiftc] Add test case for crash triggered in swift::constraints::ConstraintGraph::addConstraint(swift::constraints::Constraint*)
...
Stack trace:
```
swift: /path/to/swift/lib/Sema/ConstraintGraph.cpp:50: std::pair<ConstraintGraphNode &, unsigned int> swift::constraints::ConstraintGraph::lookupNode(swift::TypeVariableType *): Assertion `impl.getGraphIndex() < TypeVariables.size() && "Out-of-bounds index"' failed.
9 swift 0x0000000000f068df swift::constraints::ConstraintGraph::addConstraint(swift::constraints::Constraint*) + 111
10 swift 0x0000000000e81f42 swift::constraints::ConstraintSystem::addConstraint(swift::constraints::Constraint*, bool, bool) + 258
11 swift 0x0000000000e02ca3 swift::TypeChecker::typesSatisfyConstraint(swift::Type, swift::Type, swift::constraints::ConstraintKind, swift::DeclContext*) + 131
12 swift 0x0000000000ea8f97 swift::constraints::ConstraintSystem::diagnoseFailureForExpr(swift::Expr*) + 919
13 swift 0x0000000000ead51e swift::constraints::ConstraintSystem::salvage(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::Expr*) + 4046
14 swift 0x0000000000dfa275 swift::TypeChecker::solveForExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::FreeTypeVariableBinding, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem&, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>) + 661
15 swift 0x0000000000e00609 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 569
18 swift 0x0000000000ea8c68 swift::constraints::ConstraintSystem::diagnoseFailureForExpr(swift::Expr*) + 104
19 swift 0x0000000000ead51e swift::constraints::ConstraintSystem::salvage(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::Expr*) + 4046
20 swift 0x0000000000dfa275 swift::TypeChecker::solveForExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::FreeTypeVariableBinding, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem&, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>) + 661
21 swift 0x0000000000e00609 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 569
25 swift 0x0000000000ea8c68 swift::constraints::ConstraintSystem::diagnoseFailureForExpr(swift::Expr*) + 104
26 swift 0x0000000000ead51e swift::constraints::ConstraintSystem::salvage(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::Expr*) + 4046
27 swift 0x0000000000dfa275 swift::TypeChecker::solveForExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::FreeTypeVariableBinding, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem&, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>) + 661
28 swift 0x0000000000e00609 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 569
31 swift 0x0000000000e6084a swift::TypeChecker::typeCheckFunctionBodyUntil(swift::FuncDecl*, swift::SourceLoc) + 362
32 swift 0x0000000000e6069e swift::TypeChecker::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc) + 46
33 swift 0x0000000000e61268 swift::TypeChecker::typeCheckAbstractFunctionBody(swift::AbstractFunctionDecl*) + 136
35 swift 0x0000000000de75ab swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1771
36 swift 0x0000000000c9eed2 swift::CompilerInstance::performSema() + 2946
38 swift 0x0000000000764692 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2482
39 swift 0x000000000075f271 main + 2705
Stack dump:
0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28196-swift-constraints-constraintgraph-addconstraint.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28196-swift-constraints-constraintgraph-addconstraint-42f46f.o
1. While type-checking 'b' at validation-test/compiler_crashers/28196-swift-constraints-constraintgraph-addconstraint.swift:12:1
2. While type-checking expression at [validation-test/compiler_crashers/28196-swift-constraints-constraintgraph-addconstraint.swift:12:8 - line:12:11] RangeText="{}{a"
3. While type-checking expression at [validation-test/compiler_crashers/28196-swift-constraints-constraintgraph-addconstraint.swift:12:10 - line:12:11] RangeText="{a"
4. While type-checking expression at [validation-test/compiler_crashers/28196-swift-constraints-constraintgraph-addconstraint.swift:12:10 - line:12:11] RangeText="{a"
<unknown>:0: error: unable to execute command: Aborted
<unknown>:0: error: compile command failed due to signal (use -v to see invocation)
```
2016-01-09 12:31:46 +01:00
Greg Parker
c9f4dc0044
[test] Fail if a test file uses StdlibUnittest but runs no tests.
...
This catches accidental omission of runAllTests(). Previously
such test files would silently test nothing and succeed.
2016-01-09 03:27:56 -08:00
Greg Parker
1e5ae166e5
[test] Camouflage "XFAIL:" output checks so lit doesn't interpret them.
2016-01-09 03:27:56 -08:00
Dmitri Gribenko
302632b2fe
Merge pull request #919 from practicalswift/swiftc-28195-swift-constraints-constraintsystem-resolveoverload
...
[swiftc] Add test case for crash triggered in swift::constraints::ConstraintSystem::resolveOverload(…)
2016-01-09 11:40:46 +01:00
Jacob Bandes-Storch
b97cb48c2b
[AST] Fix inconsistent handling of generic args & params during BoundGenericType::getSubstitutions
...
A decl’s full GenericSignature is set during validateGenericTypeSignature().
Then during ConstraintSystem::openTypes(), in ReplaceDependentTypes, the GenericArgs list is built from the generic signature (via getGenericParamTypes()) and passed into a new BoundGenericType.
In BoundGenericType::getSubstitutions(), the GenericArgs are assumed to match getGenericParamsOfContext()->getParams().
However, in reality, the GenericArgs include all levels of generic args, whereas getGenericParamsOfContext() are the params of the innermost context only, so the params array is accessed past its end.
This commit changes NominalTypeDecl::getGenericParamTypes() to return the innermost params, in order to match the output of BoundGenericType::getGenericArgs(). For clarity and to hopefully prevent future confusion, we also rename getGenericParamTypes() to getInnermostGenericParamTypes().
2016-01-09 02:19:28 -08:00
Chris Lattner
675ca03b12
fix a compiler crasher that practicalswift recently found.
2016-01-08 23:03:18 -08:00
John McCall
e21b71a4e7
This test has been fixed.
2016-01-08 22:49:03 -08:00
Jacob Bandes-Storch
ce2f5d6ba8
[Sema] Skip ErrorTypes in potential bindings during constraint solving
2016-01-08 22:45:52 -08:00
Jacob Bandes-Storch
824c1c043b
[Sema] Fix crash in addCurriedSelfType
...
isGenericContext() returning true doesn’t necessarily imply that getGenericSignature() returns non-null. getGenericSignatureOfContext() performs a traversal equivalent to isGenericContext(), so we use it instead.
2016-01-08 22:08:46 -08:00
practicalswift
42002a8863
[swiftc] Add test case for crash triggered in swift::constraints::ConstraintSystem::resolveOverload(swift::constraints::ConstraintLocator*, swift::Type, swift::constraints::OverloadChoice)
...
Stack trace:
```
swift: /path/to/swift/lib/Sema/ConstraintSystem.cpp:1399: void swift::constraints::ConstraintSystem::resolveOverload(swift::constraints::ConstraintLocator *, swift::Type, swift::constraints::OverloadChoice): Assertion `!refType->hasTypeParameter() && "Cannot have a dependent type here"' failed.
8 swift 0x0000000000e8a1da swift::constraints::ConstraintSystem::resolveOverload(swift::constraints::ConstraintLocator*, swift::Type, swift::constraints::OverloadChoice) + 4058
9 swift 0x0000000000ee45c1 swift::constraints::ConstraintSystem::simplifyConstraint(swift::constraints::Constraint const&) + 897
10 swift 0x0000000000eeda26 swift::constraints::ConstraintSystem::solveSimplified(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::FreeTypeVariableBinding) + 3142
11 swift 0x0000000000eeb4c9 swift::constraints::ConstraintSystem::solveRec(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::FreeTypeVariableBinding) + 313
12 swift 0x0000000000eeb289 swift::constraints::ConstraintSystem::solve(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::FreeTypeVariableBinding) + 73
13 swift 0x0000000000dfe2a6 swift::TypeChecker::solveForExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::FreeTypeVariableBinding, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem&, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>) + 614
14 swift 0x0000000000e04669 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 569
15 swift 0x0000000000e057e0 swift::TypeChecker::typeCheckBinding(swift::Pattern*&, swift::Expr*&, swift::DeclContext*) + 112
16 swift 0x0000000000e05989 swift::TypeChecker::typeCheckPatternBinding(swift::PatternBindingDecl*, unsigned int) + 265
18 swift 0x0000000000e1a904 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 3876
19 swift 0x00000000010097dc swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, unsigned int, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 2908
20 swift 0x00000000010081ed swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool) + 2269
21 swift 0x0000000000e40aeb swift::TypeChecker::lookupUnqualified(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 187
24 swift 0x0000000000e6a36e swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158
26 swift 0x0000000000e6b274 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164
27 swift 0x0000000000e6a27a swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42
28 swift 0x0000000000e3ce7f swift::TypeChecker::checkGenericParamList(swift::ArchetypeBuilder*, swift::GenericParamList*, swift::DeclContext*, bool, swift::GenericTypeResolver*) + 607
29 swift 0x0000000000e3e5ff swift::TypeChecker::validateGenericSignature(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, std::function<bool (swift::ArchetypeBuilder&)>, bool&) + 143
30 swift 0x0000000000e3e9b4 swift::TypeChecker::validateGenericTypeSignature(swift::NominalTypeDecl*) + 116
31 swift 0x0000000000e19b42 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 354
35 swift 0x0000000000e1f2c6 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150
36 swift 0x0000000000deb4e2 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1474
37 swift 0x0000000000ca2572 swift::CompilerInstance::performSema() + 2946
39 swift 0x0000000000764552 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2482
40 swift 0x000000000075f131 main + 2705
Stack dump:
0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28195-swift-constraints-constraintsystem-resolveoverload.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28195-swift-constraints-constraintsystem-resolveoverload-3b9977.o
1. While type-checking 'a' at validation-test/compiler_crashers/28195-swift-constraints-constraintsystem-resolveoverload.swift:8:1
2. While resolving type h at [validation-test/compiler_crashers/28195-swift-constraints-constraintsystem-resolveoverload.swift:11:16 - line:11:16] RangeText="h"
3. While type-checking expression at [validation-test/compiler_crashers/28195-swift-constraints-constraintsystem-resolveoverload.swift:10:7 - line:10:7] RangeText="b"
<unknown>:0: error: unable to execute command: Aborted
<unknown>:0: error: compile command failed due to signal (use -v to see invocation)
```
2016-01-09 01:41:08 +01:00
practicalswift
57d4f2d4da
Remove redundant backslashes.
2016-01-09 01:39:22 +01:00
practicalswift
bf90a10adc
Avoid multiple imports on same line.
2016-01-09 01:39:22 +01:00
practicalswift
21c3d93bea
Remove unused imports.
2016-01-09 01:39:22 +01:00
Erik Eckstein
9c25ce1a75
tests: add a few more import statements to workaround linker errors
2016-01-08 15:08:56 -08:00
Dmitri Gribenko
408f7fa0fe
Merge pull request #915 from practicalswift/swiftc-28194-swift-abstractstoragedecl-isgettermutating
...
[swiftc] Add test case for crash triggered in swift::AbstractStorageDecl::isGetterMutating()
2016-01-09 00:35:37 +02:00
practicalswift
0f256b7fe8
Fix IDE test suite: Update with expected exit code (0).
2016-01-08 22:44:10 +01:00
practicalswift
db9fa33be6
Move to IDE/crashers_fixed/
...
Fixed thanks to @nkcsgexi:s commit f5f796b648 :-)
2016-01-08 22:30:26 +01:00
practicalswift
7382b469b5
Update RUN line to reflect current non-crash status.
2016-01-08 22:28:29 +01:00