Commit Graph

294 Commits

Author SHA1 Message Date
Maxim Moiseev
1c1b2b966d [stdlib] String : RangeReplaceableCollection & BidirectionalCollection (#8921)
* [stdlib] String : RangeReplaceableCollection & BidirectionalCollection

* Add source compatibility hack for Swift.max

* Add source compatibility hack for Swift.min

* Remove redundant conformance in benchmarks

* Fix stupid typo I thought I'd already pushed

* XFAIL testing now-redundant conformance

* XFAIL an IDE test for now
2017-04-23 20:04:54 -07:00
Slava Pestov
4817bd4214 Add some SourceKit crasher test cases
The unfixed ones were discovered by fuzzing. I have fixes for most
of them in an in-progress PR.

One that was already fixed is just a regression test I'm adding.
2017-04-11 14:26:10 -07:00
Slava Pestov
730cd388b4 Re-add a 'REQUIRES: asserts' that was spuriously deleted to fix no-asserts build 2016-12-12 17:42:36 -08:00
Slava Pestov
e063e8297c Sema: Some fixes for the ITC
- In functions called from resolveType(), consistently
  use a Type() return value to indicate 'unsatisfied
  dependency', and ErrorType to indicate failure.

- Plumb the unsatisfiedDependency callback through the
  resolution of the arguments of BoundGenericTypes, and
  also pass down the options.

- Before doing a conformance check on the argument of a
  BoundGenericType, kick off a TypeCheckSuperclass request
  if the type in question is a class. This ensures we don't
  recurse through NominalTypeDecl::prepareConformanceTable(),
  which wants to see a class with a valid superclass.

- The ResolveTypeOfDecl request was assuming that
  the request was satisfied after calling validateDecl().
  This is not the case when the ITC is invoked from a
  recursive call to validateDecl(), hack this up by returning
  *true* from isResolveTypeDeclSatisfied(); otherwise we
  assert in satisfy(), and we can't make forward progress
  in this case anyway.

- Fix a bug in cycle breaking; it seems if we don't invoke
  the cycle break callback on all pending requests, we end
  up looping forever in an outer call to satisfy().

- Remove unused TR_GlobalTypeAlias option.
2016-12-09 17:36:49 -08:00
Xi Ge
6bbdf4a837 [Mangler] Check the order of generic type parameters before mangling them to avoid assertion hit. 2016-12-09 09:51:40 -08:00
Jordan Rose
49e6c06eef [validation-test] Remove "REQUIRES: asserts" from /fixed/ crash cases. (#6156) 2016-12-08 19:06:32 -08:00
swift-ci
bff17cb5ee Merge pull request #6119 from bitjammer/sr-3354-crash-case 2016-12-06 19:20:25 -08:00
David Farler
ff830ce4aa Add separate compiler crasher case for SR-3354
This isn't specifically related to code completion, but an
infinite recursion in the type checker.

https://bugs.swift.org/browse/SR-3354
2016-12-06 19:03:06 -08:00
Xi Ge
54e8527d5c [code-completion] Ensure consumeDecl() does not alter the state of parser. (#6110)
This also fixes IDE/crashers/029-swift-decl-walk.swift.
2016-12-06 16:01:29 -08:00
Ben Langmuir
ef7f8f7c9a Merge pull request #6102 from benlangmuir/fix-032
[code-completion] Allow ErrorType in solution to avoid assertion failure
2016-12-06 12:26:33 -08:00
Ben Langmuir
49f144205f Merge pull request #6085 from nathawes/rdar28867801
[code-completion] Fix crash in printParameterList when paramListTy is…
2016-12-06 11:46:26 -08:00
Ben Langmuir
c01bff7ddb [code-completion] Allow ErrorType in solution to avoid assertion failure
When CSGen encounters an error it may set a type to ErrorType, but the
system will still "solve".
2016-12-06 10:42:16 -08:00
Slava Pestov
dbdb8d62ea Merge pull request #6094 from slavapestov/cleanup-generic-resolver-workaround
Cleanup generic resolver workaround
2016-12-06 10:24:18 -08:00
Slava Pestov
fdaa886065 Sema: Rework resolveTypeInContext()
Separate the "find the correct context" part from "substitute in the
base type" part. The former can go away completely after a bit of
refactoring.
2016-12-06 09:39:28 -08:00
swift-ci
20c44e6de4 Merge pull request #6095 from akyrtzi/fix-ide-crash-103 2016-12-06 09:06:31 -08:00
Argyrios Kyrtzidis
7a390e1fac [code-completion] Improve robustness of Solution::computeSubstitutions and check if OpenedTypes contains the provided locator.
Fixes validation-test/IDE/crashers/103-swift-constraints-solution-resolvelocatortodecl.swift.
2016-12-06 08:28:53 -08:00
Doug Gregor
6c7277be2c [Type checker] Work around issues with badly broken generic code.
The GenericTypeOrArchetypeResolver changes are effectively porting
some existing hacks from the now-dead
PartialGenericTypeOrArchetypeResolver, which dodges some regressions
in the compiler-crashers suite and fixes 11 new crashers. There is
undoubtedly a more principled approach to fix these problems, most of
which now step from recursively looking for a generic environment that
isn't there, but doing so requires improvements to our name lookup.
2016-12-05 22:44:24 -08:00
Xi Ge
1f7a5f4412 Fixing /IDE/crashers/016-swift-mangle-mangler-mangleidentifier.swift (#6079) 2016-12-05 21:20:35 -08:00
Xi Ge
1570f8e4f1 Fixing IDE/crashers/091-swift-typechecker-computedefaultaccessibility.swift (#6084) 2016-12-05 20:52:07 -08:00
swift-ci
e0bec70809 Merge pull request #6090 from bitjammer/guard-null-generic-env 2016-12-05 19:59:12 -08:00
David Farler
25e623addb Don't resolve a generic type parameter type from null environments
The generic environment of a GenericTypeToArchetypeResolver may be
`nullptr`, as returned by DeclContext::getGenericEnvironmentOfContext,
during prechecking of closure expressions at the necessarily non-generic
top level.

Fixes a couple of crashers.
2016-12-05 19:34:02 -08:00
swift-ci
5b822979a1 Merge pull request #6088 from bitjammer/correct-utf-8-illegal-octets 2016-12-05 17:51:10 -08:00
swift-ci
de858041e7 Merge pull request #6087 from akyrtzi/fix-ide-crash-084 2016-12-05 17:51:09 -08:00
David Farler
330c2d96e6 Make the lexer UTF-8 RFC 3629 correct re: prefix octets
RFC 2279 states that, in UTF-8:
"The octet values FE and FF never appear."

RFC 3629 states that, in UTF-8:
"The octet values C0, C1, F5 to FF never appear."

Generalize the check to advance past invalid starting bytes for
a UTF-8 sequence to fix a crash in the lexer.
2016-12-05 17:21:17 -08:00
Argyrios Kyrtzidis
fc678740db [code-completion] Avoid a tentantive parse when in code-completion mode and make sure CodeCompletionExpr has a token range.
The tentantive parse is used for diagnostic purposes but can cause code-completion to delay the same decl twice.
The range of CodeCompletionExpr was previously character range which invalidated invariants of the AST.

Fixes:
	validation-test/IDE/crashers_fixed/084-swift-parser-consumedecl.swift
	validation-test/IDE/crashers_fixed/104-swift-gettypeofcompletioncontextexpr.swift
2016-12-05 17:09:49 -08:00
Nathan Hawes
528f38aadb [code-completion] Fix crash in printParameterList when paramListTy is Error type rdar://problem/28867801 2016-12-05 15:16:13 -08:00
Argyrios Kyrtzidis
b0705b455a [code-completion] Fix assertion hit when calling 'DeclContext::getResilienceExpansion()' with invalid code
Fixes:
	validation-test/IDE/crashers/074-swift-valuedecl-geteffectiveaccess.swift
	validation-test/IDE/crashers/095-swift-declcontext-getresilienceexpansion.swift
2016-12-05 14:39:53 -08:00
swift-ci
796994cd80 Merge pull request #6080 from akyrtzi/fix-crash-014 2016-12-05 13:30:31 -08:00
Argyrios Kyrtzidis
f548c2ba52 [code-completion] Fix assertion hit when completing after incomplete property.
Make sure to call getPtrOrNull() instead of get() directly.
2016-12-05 12:48:48 -08:00
swift-ci
159a1d93a2 Merge pull request #6077 from nkcsgexi/ide-crash-012 2016-12-05 12:29:03 -08:00
swift-ci
c14391de1f Merge pull request #6076 from benlangmuir/fix-040 2016-12-05 12:16:08 -08:00
Xi Ge
5699b5a1e0 Fixing /IDE/crashers/012-swift-mangle-mangler-manglecontext.swift 2016-12-05 11:55:21 -08:00
Ben Langmuir
1ca799bfda [code-completion] Fix crash in typeCheckConstructorBodyUntil with null nominal context
With erroneous code, such as in code-completion, it's not safe to assume
that the constructor is inside a nominal decl context.

rdar://problem/28867794
2016-12-05 11:52:18 -08:00
Ben Langmuir
9894eeda45 [code-completion] Fix crash with missing func body in type-checking
We already fail early on a missing body in normal type-checking, but we
missed the case where we call typeCheckAbstractFunctionBodyUntil
directly, as in code-completion.

rdar://problem/28822204
2016-12-05 10:42:56 -08:00
Doug Gregor
46e6a38e50 Mark three crashers as resolved 2016-12-01 15:25:43 -08:00
Slava Pestov
7b59e75d34 IDE: hasType() => hasInterfaceType() 2016-11-29 03:05:31 -07:00
Slava Pestov
044034cae5 Sema: hasType() => hasInterfaceType() 2016-11-29 03:05:31 -07:00
Slava Pestov
6cbb494ad2 AST: Give all ValueDecls an interface type
Previously, getInterfaceType() would return getType() if no
interface type was set. Instead, always set an interface type
explicitly.

Eventually we want to remove getType() altogether, and this
brings us one step closer to this goal.

Note that ParamDecls are excempt from this treatment, because
they don't have a proper interface type yet. Cleaning this up
requires more effort.
2016-11-29 03:05:25 -07:00
Slava Pestov
ea28765ced Sema: Resolve invalid generic parameters to error types
When a generic parameter list fails to parse, we don't call
DeclContext::setGenericParams(), even though the generic
parameters are still available for name lookup.

This causes various crashes, which this patch fixes by
mapping the generic parameters to ErrorTypes.
2016-11-26 01:31:59 -05:00
Graydon Hoare
7c1dc18b64 Revert "Give all declarations an explicit interface type" 2016-11-24 09:55:27 -08:00
Slava Pestov
ee56292808 AST: Give all ValueDecls an interface type
Previously, getInterfaceType() would return getType() if no
interface type was set. Instead, always set an interface type
explicitly.

Eventually we want to remove getType() altogether, and this
brings us one step closer to this goal.

Note that ParamDecls are excempt from this treatment, because
they don't have a proper interface type yet. Cleaning this up
requires more effort.
2016-11-24 02:35:21 -05:00
Ben Langmuir
fe2c0db53b [code-completion] Fix completion when deinit shows up inside a local context
When braces are mismatched, we can have a deinit inside a function, so
ensure we don't crash in validateDecl.

rdar://problem/28867782
2016-11-11 11:41:08 -08:00
Ben Langmuir
917a09ef42 Add REQUIRES: asserts to 016-swift-mangle-mangler-mangleidentifier.swift
At some point this test stopped crashing unless you have assertions
enabled.

rdar://problem/29186276
2016-11-09 15:58:36 -08:00
Mark Lacey
18c809d1d4 Fix crash in member lookup when base type contains type variables.
We were crashing during performTypoCorrection if the base type contained
type variables.

rdar://problem/28387684
2016-11-02 21:12:47 -07:00
practicalswift
cf51c9cb57 Merge pull request #5342 from practicalswift/sourcekit-109-swift-constraints-constraintgraph-change-addedtypevariable
[SourceKit] Add test case for crash triggered in swift::constraints::ConstraintGraph::Change::addedTypeVariable(…)
2016-10-19 09:18:36 +02:00
Rintaro Ishizaki
43003a7e14 An IDE crasher was fixed in previous commit 2016-10-19 02:22:23 +09:00
practicalswift
5ae9301105 [SourceKit] Add test case for crash triggered in swift::constraints::ConstraintGraph::Change::addedTypeVariable(swift::TypeVariableType*)
Stack trace:

```
found code completion token A at offset 142
swift-ide-test: /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.
7  swift-ide-test  0x0000000000ab9080 swift::constraints::ConstraintGraph::Change::addedTypeVariable(swift::TypeVariableType*) + 0
8  swift-ide-test  0x0000000000abab32 swift::constraints::ConstraintGraph::addConstraint(swift::constraints::Constraint*) + 130
9  swift-ide-test  0x0000000000ac5d96 swift::constraints::ConstraintSystem::addConstraint(swift::constraints::Constraint*, bool, bool) + 246
10 swift-ide-test  0x00000000009dc750 swift::isExtensionApplied(swift::DeclContext&, swift::Type, swift::ExtensionDecl const*) + 944
16 swift-ide-test  0x0000000000a691f0 swift::TypeChecker::performTypoCorrection(swift::DeclContext*, swift::DeclRefKind, swift::Type, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>, swift::LookupResult&, unsigned int) + 272
18 swift-ide-test  0x0000000000aebe63 swift::constraints::ConstraintSystem::diagnoseFailureForExpr(swift::Expr*) + 1987
19 swift-ide-test  0x0000000000af1a00 swift::constraints::ConstraintSystem::salvage(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::Expr*) + 4320
20 swift-ide-test  0x0000000000a128cf 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>) + 431
21 swift-ide-test  0x0000000000a1536e swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) + 942
24 swift-ide-test  0x0000000000aeb71b swift::constraints::ConstraintSystem::diagnoseFailureForExpr(swift::Expr*) + 123
25 swift-ide-test  0x0000000000af1a00 swift::constraints::ConstraintSystem::salvage(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::Expr*) + 4320
26 swift-ide-test  0x0000000000a128cf 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>) + 431
27 swift-ide-test  0x0000000000a1536e swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) + 942
30 swift-ide-test  0x0000000000aeb706 swift::constraints::ConstraintSystem::diagnoseFailureForExpr(swift::Expr*) + 102
31 swift-ide-test  0x0000000000af1a00 swift::constraints::ConstraintSystem::salvage(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::Expr*) + 4320
32 swift-ide-test  0x0000000000a128cf 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>) + 431
33 swift-ide-test  0x0000000000a1536e swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) + 942
38 swift-ide-test  0x0000000000aeb706 swift::constraints::ConstraintSystem::diagnoseFailureForExpr(swift::Expr*) + 102
39 swift-ide-test  0x0000000000af1a00 swift::constraints::ConstraintSystem::salvage(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::Expr*) + 4320
40 swift-ide-test  0x0000000000a128cf 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>) + 431
41 swift-ide-test  0x0000000000a1536e swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) + 942
43 swift-ide-test  0x0000000000a9ab56 swift::TypeChecker::typeCheckTopLevelCodeDecl(swift::TopLevelCodeDecl*) + 134
44 swift-ide-test  0x0000000000a51897 swift::typeCheckTopLevelCodeDecl(swift::TopLevelCodeDecl*) + 647
47 swift-ide-test  0x000000000098ac31 swift::performDelayedParsing(swift::DeclContext*, swift::PersistentParserState&, swift::CodeCompletionCallbacksFactory*) + 305
48 swift-ide-test  0x00000000008393f1 swift::CompilerInstance::performSema() + 3697
49 swift-ide-test  0x00000000007d9894 main + 42916
Stack dump:
0.	Program arguments: swift-ide-test -code-completion -code-completion-token=A -source-filename=<INPUT-FILE>
1.	While type-checking expression at [<INPUT-FILE>:3:1 - line:4:2] RangeText="assert(Range.b
v"
2.	While type-checking expression at [<INPUT-FILE>:3:7 - line:4:2] RangeText="(Range.b
v"
3.	While type-checking expression at [<INPUT-FILE>:3:8 - line:3:14] RangeText="Range.b"
4.	While type-checking expression at [<INPUT-FILE>:3:8 - line:3:14] RangeText="Range.b"
```
2016-10-18 09:59:40 +02:00
practicalswift
c27a16ea24 [SourceKit] Add test case for crash triggered in swift::getTypeOfCompletionContextExpr(swift::ASTContext&, swift::DeclContext*, swift::CompletionTypeCheckKind, swift::Expr*&, swift::ConcreteDeclRef&)
Stack trace:

```
found code completion token A at offset 143
swift-ide-test: /path/to/swift/lib/Sema/TypeCheckConstraints.cpp:1636: Optional<swift::Type> swift::TypeChecker::getTypeOfExpressionWithoutApplying(swift::Expr *&, swift::DeclContext *, swift::ConcreteDeclRef &, swift::FreeTypeVariableBinding, swift::ExprTypeCheckListener *): Assertion `exprType && !exprType->hasError() && "erroneous solution?"' failed.
9  swift-ide-test  0x0000000000a4fa83 swift::getTypeOfCompletionContextExpr(swift::ASTContext&, swift::DeclContext*, swift::CompletionTypeCheckKind, swift::Expr*&, swift::ConcreteDeclRef&) + 691
13 swift-ide-test  0x0000000000c5d4d4 swift::Decl::walk(swift::ASTWalker&) + 20
14 swift-ide-test  0x0000000000cb22ee swift::SourceFile::walk(swift::ASTWalker&) + 174
15 swift-ide-test  0x0000000000cb15ff swift::ModuleDecl::walk(swift::ASTWalker&) + 95
16 swift-ide-test  0x0000000000c87fc4 swift::DeclContext::walkContext(swift::ASTWalker&) + 180
17 swift-ide-test  0x0000000000989aa8 swift::performDelayedParsing(swift::DeclContext*, swift::PersistentParserState&, swift::CodeCompletionCallbacksFactory*) + 136
18 swift-ide-test  0x0000000000839051 swift::CompilerInstance::performSema() + 3697
19 swift-ide-test  0x00000000007d9854 main + 42916
Stack dump:
0.	Program arguments: swift-ide-test -code-completion -code-completion-token=A -source-filename=<INPUT-FILE>
1.	While walking into decl 'c' at <INPUT-FILE>:3:1
2.	While type-checking expression at [<INPUT-FILE>:4:5 - line:4:5] RangeText="a"
```
2016-10-14 22:45:22 +02:00
practicalswift
6405f583b5 [SourceKit] Add test case for crash triggered in swift::TypeChecker::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc)
Stack trace:

```
found code completion token A at offset 141
swift-ide-test: /path/to/swift/lib/Sema/TypeCheckStmt.cpp:1277: bool swift::TypeChecker::typeCheckFunctionBodyUntil(swift::FuncDecl *, swift::SourceLoc): Assertion `BS && "Should have a body"' failed.
8  swift-ide-test  0x0000000000a98477 swift::TypeChecker::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc) + 39
9  swift-ide-test  0x0000000000a50491 swift::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc) + 657
13 swift-ide-test  0x0000000000c5d4d4 swift::Decl::walk(swift::ASTWalker&) + 20
14 swift-ide-test  0x0000000000cb22ee swift::SourceFile::walk(swift::ASTWalker&) + 174
15 swift-ide-test  0x0000000000cb15ff swift::ModuleDecl::walk(swift::ASTWalker&) + 95
16 swift-ide-test  0x0000000000c87fc4 swift::DeclContext::walkContext(swift::ASTWalker&) + 180
17 swift-ide-test  0x0000000000989aa8 swift::performDelayedParsing(swift::DeclContext*, swift::PersistentParserState&, swift::CodeCompletionCallbacksFactory*) + 136
18 swift-ide-test  0x0000000000839051 swift::CompilerInstance::performSema() + 3697
19 swift-ide-test  0x00000000007d9854 main + 42916
Stack dump:
0.	Program arguments: swift-ide-test -code-completion -code-completion-token=A -source-filename=<INPUT-FILE>
1.	While walking into decl getter for a at <INPUT-FILE>:3:5
```
2016-10-14 19:06:49 +02:00
practicalswift
8287be2767 [SourceKit] Add test case for crash triggered in swift::ModuleDecl::lookupConformance(swift::Type, swift::ProtocolDecl*, swift::LazyResolver*)
Stack trace:

```
found code completion token A at offset 137
swift-ide-test: /path/to/swift/lib/AST/Module.cpp:596: ArrayRef<swift::Substitution> swift::TypeBase::gatherAllSubstitutions(Module *, swift::LazyResolver *, swift::DeclContext *): Assertion `boundGeneric->getGenericArgs().size() == genericSig->getInnermostGenericParams().size()' failed.
8  swift-ide-test  0x0000000000cad47d swift::ModuleDecl::lookupConformance(swift::Type, swift::ProtocolDecl*, swift::LazyResolver*) + 1677
9  swift-ide-test  0x0000000000a706ce swift::TypeChecker::conformsToProtocol(swift::Type, swift::ProtocolDecl*, swift::DeclContext*, swift::OptionSet<swift::ConformanceCheckFlags, unsigned int>, swift::ProtocolConformance**, swift::SourceLoc) + 62
10 swift-ide-test  0x0000000000a9e689 swift::TypeChecker::resolveTypeInContext(swift::TypeDecl*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 1273
14 swift-ide-test  0x0000000000a9fdfd swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 157
16 swift-ide-test  0x0000000000aa0e0f swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 159
17 swift-ide-test  0x0000000000a9f5a5 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 277
18 swift-ide-test  0x0000000000a1ff62 swift::TypeChecker::checkInheritanceClause(swift::Decl*, swift::GenericTypeResolver*) + 2178
19 swift-ide-test  0x0000000000a62cd6 swift::TypeChecker::checkGenericParamList(swift::ArchetypeBuilder*, swift::GenericParamList*, swift::GenericSignature*, swift::GenericEnvironment*, swift::GenericTypeResolver*) + 326
20 swift-ide-test  0x0000000000a640c4 swift::TypeChecker::validateGenericSignature(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, bool, std::function<void (swift::ArchetypeBuilder&)>) + 116
21 swift-ide-test  0x0000000000a64b10 swift::TypeChecker::validateGenericTypeSignature(swift::GenericTypeDecl*) + 128
22 swift-ide-test  0x0000000000a21bac swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 348
27 swift-ide-test  0x0000000000a28126 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150
28 swift-ide-test  0x0000000000a4e64f swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) + 1055
29 swift-ide-test  0x0000000000838ef6 swift::CompilerInstance::performSema() + 3350
30 swift-ide-test  0x00000000007d9854 main + 42916
Stack dump:
0.	Program arguments: swift-ide-test -code-completion -code-completion-token=A -source-filename=<INPUT-FILE>
1.	While type-checking 'c' at <INPUT-FILE>:3:1
2.	While resolving type T at [<INPUT-FILE>:3:25 - line:3:25] RangeText="T"
```
2016-10-14 16:51:52 +02:00