diff --git a/validation-test/IDE/crashers/CodeCompletionCallbacksImpl-typecheckParsedType-571e84.swift b/validation-test/IDE/crashers/CodeCompletionCallbacksImpl-typecheckParsedType-571e84.swift new file mode 100644 index 0000000000000..f8d2a72dd84d9 --- /dev/null +++ b/validation-test/IDE/crashers/CodeCompletionCallbacksImpl-typecheckParsedType-571e84.swift @@ -0,0 +1,3 @@ +// {"kind":"complete","original":"00fc7609","signature":"(anonymous namespace)::CodeCompletionCallbacksImpl::typecheckParsedType()","signatureAssert":"Assertion failed: (!type->hasTypeParameter() && \"no generic environment provided for type with type parameters\"), function mapTypeIntoEnvironment"} +// RUN: not --crash %target-swift-ide-test -code-completion -batch-code-completion -skip-filecheck -code-completion-diagnostics -source-filename %s +protocol a:Self#^^# diff --git a/validation-test/IDE/crashers/CompletionLookup-foundDecl-b8e9b2.swift b/validation-test/IDE/crashers/CompletionLookup-foundDecl-b8e9b2.swift new file mode 100644 index 0000000000000..7435d48f77ee9 --- /dev/null +++ b/validation-test/IDE/crashers/CompletionLookup-foundDecl-b8e9b2.swift @@ -0,0 +1,5 @@ +// {"kind":"complete","original":"0435fa64","signature":"swift::ide::CompletionLookup::foundDecl(swift::ValueDecl*, swift::DeclVisibilityKind, swift::DynamicLookupInfo)","signatureAssert":"Assertion failed: (!type->hasTypeParameter() && \"no generic environment provided for type with type parameters\"), function mapTypeIntoEnvironment"} +// RUN: not --crash %target-swift-ide-test -code-completion -batch-code-completion -skip-filecheck -code-completion-diagnostics -source-filename %s +extension Sequence where a == <#type#>[ { + #^^# +} diff --git a/validation-test/IDE/crashers/ConformanceChecker-resolveWitnessViaLookup-1f12cf.swift b/validation-test/IDE/crashers/ConformanceChecker-recordWitness-1f12cf.swift similarity index 53% rename from validation-test/IDE/crashers/ConformanceChecker-resolveWitnessViaLookup-1f12cf.swift rename to validation-test/IDE/crashers/ConformanceChecker-recordWitness-1f12cf.swift index 3cd0d4ed79121..86f70bf40aef6 100644 --- a/validation-test/IDE/crashers/ConformanceChecker-resolveWitnessViaLookup-1f12cf.swift +++ b/validation-test/IDE/crashers/ConformanceChecker-recordWitness-1f12cf.swift @@ -1,4 +1,4 @@ -// {"kind":"complete","original":"0116e8cd","signature":"swift::ConformanceChecker::resolveWitnessViaLookup(swift::ValueDecl*)","signatureAssert":"Assertion failed: (Conformance->getWitnessUncached(requirement).getDecl() == match.Witness && \"Deduced different witnesses?\"), function recordWitness"} +// {"kind":"complete","original":"0116e8cd","signature":"swift::ConformanceChecker::recordWitness(swift::ValueDecl*, swift::RequirementMatch const&)","signatureAssert":"Assertion failed: (Conformance->getWitnessUncached(requirement).getDecl() == match.Witness && \"Deduced different witnesses?\"), function recordWitness"} // RUN: not --crash %target-swift-ide-test -code-completion -batch-code-completion -skip-filecheck -code-completion-diagnostics -source-filename %s struct a: OptionSet { static rawValue = a init(rawValue: Int ) { diff --git a/validation-test/IDE/crashers/ConstraintGenerator-visitTapExpr-bdb91a.swift b/validation-test/IDE/crashers/ConstraintGenerator-visitTapExpr-bdb91a.swift new file mode 100644 index 0000000000000..5fe99e84bc10b --- /dev/null +++ b/validation-test/IDE/crashers/ConstraintGenerator-visitTapExpr-bdb91a.swift @@ -0,0 +1,3 @@ +// {"kind":"complete","original":"bcb7c8c1","signature":"(anonymous namespace)::ConstraintGenerator::visitTapExpr(swift::TapExpr*)","signatureAssert":"Assertion failed: ((varDC == CS.DC || isa(varDC) || varDC->isChildContextOf(CS.DC)) && \"TapExpr var should be in the same DeclContext we're checking it in!\"), function visitTapExpr"} +// RUN: not --crash %target-swift-ide-test -code-completion -batch-code-completion -skip-filecheck -code-completion-diagnostics -source-filename %s +func a -> @b("\()." #^^# diff --git a/validation-test/IDE/crashers/DeclContext-getDeclaredInterfaceType-dffa2c.swift b/validation-test/IDE/crashers/DeclContext-getDeclaredTypeInContext-dffa2c.swift similarity index 61% rename from validation-test/IDE/crashers/DeclContext-getDeclaredInterfaceType-dffa2c.swift rename to validation-test/IDE/crashers/DeclContext-getDeclaredTypeInContext-dffa2c.swift index 39bec6441535a..fa2956c78298c 100644 --- a/validation-test/IDE/crashers/DeclContext-getDeclaredInterfaceType-dffa2c.swift +++ b/validation-test/IDE/crashers/DeclContext-getDeclaredTypeInContext-dffa2c.swift @@ -1,4 +1,4 @@ -// {"kind":"complete","original":"7f4bcc9e","signature":"swift::DeclContext::getDeclaredInterfaceType() const","signatureAssert":"Assertion failed: (detail::isPresent(Val) && \"dyn_cast on a non-existent value\"), function dyn_cast"} +// {"kind":"complete","original":"7f4bcc9e","signature":"swift::DeclContext::getDeclaredTypeInContext() const"} // RUN: not --crash %target-swift-ide-test -code-completion -batch-code-completion -skip-filecheck -code-completion-diagnostics -source-filename %s extension Sequence where a == b[ { func c() -> #^^# diff --git a/validation-test/IDE/crashers/TypeChecker-typeCheckCondition-974abc.swift b/validation-test/IDE/crashers/TypeChecker-typeCheckCondition-974abc.swift new file mode 100644 index 0000000000000..19469f1f5769e --- /dev/null +++ b/validation-test/IDE/crashers/TypeChecker-typeCheckCondition-974abc.swift @@ -0,0 +1,3 @@ +// {"kind":"complete","original":"e6459edc","signature":"swift::TypeChecker::typeCheckCondition(swift::Expr*&, swift::DeclContext*)","signatureAssert":"Assertion failed: (!expr->getType() && \"the bool condition is already type checked\"), function typeCheckCondition"} +// RUN: not --crash %target-swift-ide-test -code-completion -batch-code-completion -skip-filecheck -code-completion-diagnostics -source-filename %s +(if) {}#^^# diff --git a/validation-test/IDE/crashers/TypeChecker-typeCheckStmtConditionElement-974abc.swift b/validation-test/IDE/crashers/TypeChecker-typeCheckStmtConditionElement-974abc.swift deleted file mode 100644 index 27eec93a624ef..0000000000000 --- a/validation-test/IDE/crashers/TypeChecker-typeCheckStmtConditionElement-974abc.swift +++ /dev/null @@ -1,3 +0,0 @@ -// {"kind":"complete","original":"e6459edc","signature":"swift::TypeChecker::typeCheckStmtConditionElement(swift::StmtConditionElement&, bool&, swift::DeclContext*)","signatureAssert":"Assertion failed: (!E->getType() && \"the bool condition is already type checked\"), function typeCheckBooleanStmtConditionElement"} -// RUN: not --crash %target-swift-ide-test -code-completion -batch-code-completion -skip-filecheck -code-completion-diagnostics -source-filename %s -(if) {}#^^# diff --git a/validation-test/IDE/crashers/TypeResolution-resolveContextualType-1d60f3.swift b/validation-test/IDE/crashers/TypeResolution-resolveContextualType-1d60f3.swift new file mode 100644 index 0000000000000..9e22f444215ad --- /dev/null +++ b/validation-test/IDE/crashers/TypeResolution-resolveContextualType-1d60f3.swift @@ -0,0 +1,4 @@ +// {"kind":"complete","original":"d73870ca","signature":"swift::TypeResolution::resolveContextualType(swift::TypeRepr*, swift::DeclContext*, swift::GenericSignature, swift::TypeResolutionOptions, llvm::function_ref, llvm::function_ref, llvm::function_ref, llvm::function_ref)>, swift::SILTypeResolutionContext*)","signatureAssert":"Assertion failed: (!type->hasTypeParameter() && \"no generic environment provided for type with type parameters\"), function mapTypeIntoEnvironment"} +// RUN: not --crash %target-swift-ide-test -code-completion -batch-code-completion -skip-filecheck -code-completion-diagnostics -source-filename %s +@ a(b +#^^# struct c) const","signatureAssert":"Assertion failed: (detail::isPresent(Val) && \"dyn_cast on a non-existent value\"), function dyn_cast"} -// RUN: not --crash %target-swift-frontend -typecheck %s -@propertyWrapper struct a { - @a $b: diff --git a/validation-test/compiler_crashers/AvailabilityContext-forDeclSignature-6cbf07.swift b/validation-test/compiler_crashers/AvailabilityContext-forDeclSignature-6cbf07.swift new file mode 100644 index 0000000000000..d302199c16b89 --- /dev/null +++ b/validation-test/compiler_crashers/AvailabilityContext-forDeclSignature-6cbf07.swift @@ -0,0 +1,4 @@ +// {"kind":"typecheck","signature":"swift::AvailabilityContext::forDeclSignature(swift::Decl const*)"} +// RUN: not --crash %target-swift-frontend -typecheck %s +@_typeEraser(a) protocol b dynamic func c->some b { + d diff --git a/validation-test/compiler_crashers/ConstraintGraph-computeConnectedComponents-37d275.swift b/validation-test/compiler_crashers/ConstraintGraph-computeConnectedComponents-37d275.swift new file mode 100644 index 0000000000000..0522f80258f99 --- /dev/null +++ b/validation-test/compiler_crashers/ConstraintGraph-computeConnectedComponents-37d275.swift @@ -0,0 +1,3 @@ +// {"kind":"typecheck","original":"1d97bdbd","signature":"swift::constraints::ConstraintGraph::computeConnectedComponents(llvm::ArrayRef)","signatureAssert":"Assertion failed: (component != components.end()), function operator()"} +// RUN: not --crash %target-swift-frontend -typecheck %s +let i =... a { " ? \(i Array* )" [ diff --git a/validation-test/compiler_crashers/Decl-getLoc-6cbf07.swift b/validation-test/compiler_crashers/Decl-getLoc-6cbf07.swift deleted file mode 100644 index 2f219dd0663d6..0000000000000 --- a/validation-test/compiler_crashers/Decl-getLoc-6cbf07.swift +++ /dev/null @@ -1,4 +0,0 @@ -// {"kind":"typecheck","signature":"swift::Decl::getLoc(bool) const","signatureAssert":"Assertion failed: (Val && \"isa<> used on a null pointer\"), function doit"} -// RUN: not --crash %target-swift-frontend -typecheck %s -@_typeEraser(a) protocol b dynamic func c->some b { - d diff --git a/validation-test/compiler_crashers/Expr-canAppendPostfixExpression-7e19cb.swift b/validation-test/compiler_crashers/Expr-canAppendPostfixExpression-7e19cb.swift new file mode 100644 index 0000000000000..e6e9dea3bc1f4 --- /dev/null +++ b/validation-test/compiler_crashers/Expr-canAppendPostfixExpression-7e19cb.swift @@ -0,0 +1,3 @@ +// {"kind":"typecheck","signature":"swift::Expr::canAppendPostfixExpression(bool) const","signatureAssert":"Assertion failed: (isa(Val) && \"cast() argument of incompatible type!\"), function cast"} +// RUN: not --crash %target-swift-frontend -typecheck %s +struct a(Val) && \"cast() argument of incompatible type!\"), function cast"} -// RUN: not --crash %target-swift-frontend -typecheck %s -struct agetType().isObject()), function operator()"} +// RUN: not --crash %target-swift-frontend -emit-silgen %s +var a: Any = ["": [a]] as [String: [AnyObject?]] diff --git a/validation-test/compiler_crashers/SameTypeRequirementFailure-SameTypeRequirementFailure-438c8a.swift b/validation-test/compiler_crashers/SameTypeRequirementFailure-SameTypeRequirementFailure-438c8a.swift deleted file mode 100644 index a92dbfa98b075..0000000000000 --- a/validation-test/compiler_crashers/SameTypeRequirementFailure-SameTypeRequirementFailure-438c8a.swift +++ /dev/null @@ -1,4 +0,0 @@ -// {"kind":"typecheck","signature":"swift::constraints::SameTypeRequirementFailure::SameTypeRequirementFailure(swift::constraints::Solution const&, swift::Type, swift::Type, swift::constraints::ConstraintLocator*)","signatureAssert":"Assertion failed: (getGenericContext() && \"Affected decl not within a generic context?\"), function RequirementFailure"} -// RUN: not --crash %target-swift-frontend -typecheck %s -protocol a struct b extension Dictionary : a where Value == let func !c { - let d : [Int:b] let : a = d diff --git a/validation-test/compiler_crashers/SkipSameTypeRequirement-diagnose-438c8a.swift b/validation-test/compiler_crashers/SkipSameTypeRequirement-diagnose-438c8a.swift new file mode 100644 index 0000000000000..d9d13232b9c2f --- /dev/null +++ b/validation-test/compiler_crashers/SkipSameTypeRequirement-diagnose-438c8a.swift @@ -0,0 +1,4 @@ +// {"kind":"typecheck","signature":"swift::constraints::SkipSameTypeRequirement::diagnose(swift::constraints::Solution const&, bool) const","signatureAssert":"Assertion failed: (getGenericContext() && \"Affected decl not within a generic context?\"), function RequirementFailure"} +// RUN: not --crash %target-swift-frontend -typecheck %s +protocol a struct b extension Dictionary : a where Value == let func !c { + let d : [Int:b] let : a = d diff --git a/validation-test/compiler_crashers/Solution-getFunctionArgApplyInfo-2d64ed.swift b/validation-test/compiler_crashers/Solution-getFunctionArgApplyInfo-2d64ed.swift new file mode 100644 index 0000000000000..de5222f4449bf --- /dev/null +++ b/validation-test/compiler_crashers/Solution-getFunctionArgApplyInfo-2d64ed.swift @@ -0,0 +1,6 @@ +// {"kind":"typecheck","signature":"swift::constraints::Solution::getFunctionArgApplyInfo(swift::constraints::ConstraintLocator*) const","signatureAssert":"Assertion failed: (Val && \"isa<> used on a null pointer\"), function doit"} +// RUN: not --crash %target-swift-frontend -typecheck %s +struct a { + callAsFunction( ()) + { + a { diff --git a/validation-test/compiler_crashers/TypeJoin-join-79ac90.swift b/validation-test/compiler_crashers/TypeJoin-visitProtocolCompositionType-79ac90.swift similarity index 55% rename from validation-test/compiler_crashers/TypeJoin-join-79ac90.swift rename to validation-test/compiler_crashers/TypeJoin-visitProtocolCompositionType-79ac90.swift index 6c9312b6ea284..95cb4ebd5d81c 100644 --- a/validation-test/compiler_crashers/TypeJoin-join-79ac90.swift +++ b/validation-test/compiler_crashers/TypeJoin-visitProtocolCompositionType-79ac90.swift @@ -1,4 +1,4 @@ -// {"kind":"typecheck","signature":"(anonymous namespace)::TypeJoin::join(swift::CanType, swift::CanType)","signatureAssert":"Assertion failed: (isa(Val) && \"cast() argument of incompatible type!\"), function cast"} +// {"kind":"typecheck","signature":"(anonymous namespace)::TypeJoin::visitProtocolCompositionType(swift::CanType)","signatureAssert":"Assertion failed: (isa(Val) && \"cast() argument of incompatible type!\"), function cast"} // RUN: not --crash %target-swift-frontend -typecheck %s class a protocol b < c { associatedtype c } [ b, a & b diff --git a/validation-test/compiler_crashers/getSILValueOwnership-845e70.swift b/validation-test/compiler_crashers/getSILValueOwnership-845e70.swift deleted file mode 100644 index 7869ff251a9de..0000000000000 --- a/validation-test/compiler_crashers/getSILValueOwnership-845e70.swift +++ /dev/null @@ -1,3 +0,0 @@ -// {"kind":"emit-silgen","original":"7b4a72a9","signature":"swift::getSILValueOwnership(llvm::ArrayRef, swift::SILType)","signatureAssert":"Assertion failed: (v->getType().isObject()), function operator()"} -// RUN: not --crash %target-swift-frontend -emit-silgen %s -var a: Any = ["": [a]] as [String: [AnyObject?]]