Commit Graph

1444 Commits

Author SHA1 Message Date
practicalswift
66f44b430e [swiftc (36 vs. 5565)] Add crasher in swift::Type::transformRec
Add test case for crash triggered in `swift::Type::transformRec`.

Current number of unresolved compiler crashers: 36 (5565 resolved)

Stack trace:

```
0 0x0000000003a7b018 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a7b018)
1 0x0000000003a7b756 SignalHandler(int) (/path/to/swift/bin/swift+0x3a7b756)
2 0x00007f1f6ef37390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00000000015d7687 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7687)
4 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
5 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
6 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
7 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
8 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
9 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
10 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
11 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
12 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
13 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
14 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
15 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
16 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
17 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
18 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
19 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
20 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
21 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
22 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
23 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
24 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
25 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
26 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
27 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
28 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
29 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
30 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
31 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
32 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
33 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
34 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
35 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
36 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
37 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
38 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
39 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
40 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
41 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
42 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
43 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
44 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
45 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
46 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
47 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
48 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
49 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
50 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
51 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
52 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
53 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
54 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
55 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
56 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
57 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
58 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
59 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
60 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
61 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
62 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
63 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
64 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
65 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
66 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
67 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
68 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
69 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
70 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
71 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
72 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
73 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
74 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
75 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
76 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
77 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
78 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
79 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
80 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
81 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
82 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
83 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
84 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
85 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
86 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
87 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
88 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
89 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
90 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
91 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
92 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
93 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
94 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
95 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
96 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
97 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
98 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
99 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
100 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
101 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
102 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
103 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
104 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
105 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
106 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
107 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
108 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
109 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
110 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
111 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
112 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
113 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
114 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
115 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
116 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
117 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
118 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
119 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
120 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
121 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
122 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
123 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
124 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
125 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
126 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
127 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
128 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
129 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
130 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
131 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
132 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
133 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
134 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
135 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
136 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
137 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
138 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
139 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
140 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
141 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
142 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
143 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
144 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
145 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
146 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
147 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
148 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
149 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
150 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
151 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
152 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
153 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
154 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
155 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
156 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
157 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
158 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
159 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
160 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
161 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
162 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
163 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
164 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
165 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
166 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
167 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
168 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
169 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
170 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
171 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
172 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
173 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
174 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
175 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
176 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
177 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
178 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
179 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
180 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
181 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
182 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
183 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
184 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
185 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
186 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
187 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
188 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
189 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
190 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
191 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
192 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
193 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
194 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
195 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
196 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
197 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
198 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
199 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
200 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
201 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
202 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
203 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
204 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
205 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
206 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
207 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
208 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
209 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
210 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
211 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
212 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
213 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
214 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
215 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
216 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
217 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
218 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
219 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
220 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
221 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
222 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
223 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
224 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
225 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
226 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
227 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
228 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
229 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
230 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
231 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
232 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
233 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
234 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
235 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
236 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
237 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
238 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
239 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
240 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
241 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
242 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
243 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
244 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
245 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
246 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
247 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
248 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
249 0x00000000015d3d09 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3d09)
250 0x00000000015d3fbf swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15d3fbf)
251 0x00000000015d2676 swift::Type::subst(llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15d2676)
252 0x000000000156a39a swift::GenericEnvironment::mapTypeIntoContext(swift::Type, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>) const (/path/to/swift/bin/swift+0x156a39a)
253 0x0000000001579166 swift::GenericSignatureBuilder::PotentialArchetype::getTypeInContext(swift::GenericSignatureBuilder&, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x1579166)
254 0x000000000156a266 swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x156a266)
255 0x00000000015d7689 llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_18>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15d7689)
```
2017-06-22 13:27:14 +02:00
practicalswift
a22c58574c [swiftc (35 vs. 5565)] Add crasher in swift::GenericSignatureBuilder::Constraint
Add test case for crash triggered in `swift::GenericSignatureBuilder::Constraint`.

Current number of unresolved compiler crashers: 35 (5565 resolved)

/cc @DougGregor - just wanted to let you know that this crasher caused an assertion failure for the assertion `nestedPAByName && "Didn't find the associated type we wanted"` added on 2017-03-23 by you in commit 8bd863e6 :-)

Assertion failure in [`lib/AST/GenericSignatureBuilder.cpp (line 347)`](bf7838c9cf/lib/AST/GenericSignatureBuilder.cpp (L347)):

```
Assertion `nestedPAByName && "Didn't find the associated type we wanted"' failed.

When executing: PotentialArchetype *replaceSelfWithPotentialArchetype(PotentialArchetype *, swift::Type)
```

Assertion context:

```c++

      if (auto result = findNested(otherBasePA))
        return result;
    }

    assert(nestedPAByName && "Didn't find the associated type we wanted");
    return nestedPAByName;
  }

  assert(depTy->is<GenericTypeParamType>() && "missing Self?");
  return selfPA;
```
Stack trace:

```
0 0x0000000003a7b018 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a7b018)
1 0x0000000003a7b756 SignalHandler(int) (/path/to/swift/bin/swift+0x3a7b756)
2 0x00007f92b6c18390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f92b513d428 gsignal /build/glibc-bfm8X4/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f92b513f02a abort /build/glibc-bfm8X4/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f92b5135bd7 __assert_fail_base /build/glibc-bfm8X4/glibc-2.23/assert/assert.c:92:0
6 0x00007f92b5135c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x0000000001570d1c replaceSelfWithPotentialArchetype(swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type) (/path/to/swift/bin/swift+0x1570d1c)
8 0x0000000001594a08 bool __gnu_cxx::__ops::_Iter_pred<bool (anonymous namespace)::removeSelfDerived<swift::Type>(std::vector<swift::GenericSignatureBuilder::Constraint<swift::Type>, std::allocator<swift::GenericSignatureBuilder::Constraint<swift::Type> > >&, bool)::{lambda(swift::GenericSignatureBuilder::Constraint<swift::Type> const&)#1}>::operator()<__gnu_cxx::__normal_iterator<swift::GenericSignatureBuilder::Constraint<swift::Type>*, std::vector<swift::GenericSignatureBuilder::Constraint<swift::Type>, std::allocator<swift::GenericSignatureBuilder::Constraint<swift::Type> > > > >(__gnu_cxx::__normal_iterator<swift::GenericSignatureBuilder::Constraint<swift::Type>*, std::vector<swift::GenericSignatureBuilder::Constraint<swift::Type>, std::allocator<swift::GenericSignatureBuilder::Constraint<swift::Type> > > >) (/path/to/swift/bin/swift+0x1594a08)
9 0x0000000001593cf3 swift::GenericSignatureBuilder::Constraint<swift::Type> swift::GenericSignatureBuilder::checkConstraintList<swift::Type, swift::Type>(llvm::ArrayRef<swift::GenericTypeParamType*>, std::vector<swift::GenericSignatureBuilder::Constraint<swift::Type>, std::allocator<swift::GenericSignatureBuilder::Constraint<swift::Type> > >&, llvm::function_ref<bool (swift::GenericSignatureBuilder::Constraint<swift::Type> const&)>, llvm::function_ref<swift::GenericSignatureBuilder::ConstraintRelation (swift::Type const&)>, llvm::Optional<swift::Diag<unsigned int, swift::Type, swift::Type, swift::Type> >, swift::Diag<swift::Type, swift::Type>, swift::Diag<unsigned int, swift::Type, swift::Type>, llvm::function_ref<swift::Type (swift::Type const&)>, bool) (/path/to/swift/bin/swift+0x1593cf3)
10 0x0000000001586a0f swift::GenericSignatureBuilder::checkConcreteTypeConstraints(llvm::ArrayRef<swift::GenericTypeParamType*>, swift::GenericSignatureBuilder::PotentialArchetype*) (/path/to/swift/bin/swift+0x1586a0f)
11 0x0000000001582267 swift::GenericSignatureBuilder::finalize(swift::SourceLoc, llvm::ArrayRef<swift::GenericTypeParamType*>, bool) (/path/to/swift/bin/swift+0x1582267)
12 0x00000000015887c3 swift::GenericSignatureBuilder::computeGenericSignature(swift::SourceLoc, bool) (/path/to/swift/bin/swift+0x15887c3)
13 0x000000000154af9f swift::ProtocolDecl::computeRequirementSignature() (/path/to/swift/bin/swift+0x154af9f)
14 0x000000000135a3a0 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x135a3a0)
15 0x0000000001369ee3 (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x1369ee3)
16 0x0000000001358444 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1358444)
17 0x0000000001358343 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1358343)
18 0x00000000013e3344 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13e3344)
19 0x0000000000fa16cd swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xfa16cd)
20 0x00000000004abe59 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe59)
21 0x00000000004aa3f9 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa3f9)
22 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
23 0x00007f92b5128830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
24 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-22 04:27:09 +02:00
practicalswift
bebc1821ea [swiftc (34 vs. 5565)] Add crasher in swift::GenericSignature::getConformanceAccessPath
Add test case for crash triggered in `swift::GenericSignature::getConformanceAccessPath`.

Current number of unresolved compiler crashers: 34 (5565 resolved)

/cc @DougGregor - just wanted to let you know that this crasher caused an assertion failure for the assertion `conforms != equivClass->conformsTo.end()` added on 2017-03-06 by you in commit eaee4add :-)

Assertion failure in [`lib/AST/GenericSignature.cpp (line 881)`](1afcafcd24/lib/AST/GenericSignature.cpp (L881)):

```
Assertion `conforms != equivClass->conformsTo.end()' failed.

When executing: auto swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl *, swift::ModuleDecl &)::(anonymous class)::operator()(swift::GenericSignature *, const RequirementSource *, swift::ProtocolDecl *, swift::Type) const
```

Assertion context:

```c++
      auto equivClass = pa->getOrCreateEquivalenceClass();

      // Find the conformance of this potential archetype to the protocol in
      // question.
      auto conforms = equivClass->conformsTo.find(conformingProto);
      assert(conforms != equivClass->conformsTo.end());

      // Compute the root type, canonicalizing it w.r.t. the protocol context.
      auto inProtoSig = inProtocol->getGenericSignature();
      auto conformsSource = getBestRequirementSource(conforms->second);
      Type localRootType = conformsSource->getRootPotentialArchetype()
```
Stack trace:

```
0 0x0000000003a7b018 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a7b018)
1 0x0000000003a7b756 SignalHandler(int) (/path/to/swift/bin/swift+0x3a7b756)
2 0x00007f439f990390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f439deb5428 gsignal /build/glibc-bfm8X4/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f439deb702a abort /build/glibc-bfm8X4/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f439deadbd7 __assert_fail_base /build/glibc-bfm8X4/glibc-2.23/assert/assert.c:92:0
6 0x00007f439deadc82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x000000000156f280 std::_Function_handler<void (swift::GenericSignature*, swift::GenericSignatureBuilder::RequirementSource const*, swift::ProtocolDecl*, swift::Type), swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl*, swift::ModuleDecl&)::$_11>::_M_invoke(std::_Any_data const&, swift::GenericSignature*&&, swift::GenericSignatureBuilder::RequirementSource const*&&, swift::ProtocolDecl*&&, swift::Type&&) (/path/to/swift/bin/swift+0x156f280)
8 0x000000000156df39 swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl*, swift::ModuleDecl&) (/path/to/swift/bin/swift+0x156df39)
9 0x00000000015c6044 swift::SubstitutionMap::lookupConformance(swift::CanType, swift::ProtocolDecl*) const (/path/to/swift/bin/swift+0x15c6044)
10 0x000000000156e95e bool llvm::function_ref<bool (swift::Type, llvm::ArrayRef<swift::Requirement>)>::callback_fn<swift::GenericSignature::getSubstitutions(swift::SubstitutionMap const&, llvm::SmallVectorImpl<swift::Substitution>&) const::$_8>(long, swift::Type, llvm::ArrayRef<swift::Requirement>) (/path/to/swift/bin/swift+0x156e95e)
11 0x000000000156b7f7 swift::GenericSignature::enumeratePairedRequirements(llvm::function_ref<bool (swift::Type, llvm::ArrayRef<swift::Requirement>)>) const (/path/to/swift/bin/swift+0x156b7f7)
12 0x000000000156cd62 swift::GenericSignature::getSubstitutions(swift::SubstitutionMap const&, llvm::SmallVectorImpl<swift::Substitution>&) const (/path/to/swift/bin/swift+0x156cd62)
13 0x00000000013e6499 swift::constraints::Solution::computeSubstitutions(swift::GenericSignature*, swift::constraints::ConstraintLocator*, llvm::SmallVectorImpl<swift::Substitution>&) const (/path/to/swift/bin/swift+0x13e6499)
14 0x00000000013fca9d swift::ASTVisitor<(anonymous namespace)::ExprRewriter, swift::Expr*, void, void, void, void, void>::visit(swift::Expr*) (/path/to/swift/bin/swift+0x13fca9d)
15 0x00000000013eba14 (anonymous namespace)::ExprRewriter::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x13eba14)
16 0x00000000013f14d1 (anonymous namespace)::ExprWalker::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x13f14d1)
17 0x0000000001526c3c (anonymous namespace)::Traversal::visitApplyExpr(swift::ApplyExpr*) (/path/to/swift/bin/swift+0x1526c3c)
18 0x00000000015240fb swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) (/path/to/swift/bin/swift+0x15240fb)
19 0x00000000015234db swift::Expr::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0x15234db)
20 0x00000000013e89a0 swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) (/path/to/swift/bin/swift+0x13e89a0)
21 0x000000000134148f swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x134148f)
22 0x00000000013c56d5 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13c56d5)
23 0x00000000013c3e11 swift::TypeChecker::typeCheckConstructorBodyUntil(swift::ConstructorDecl*, swift::SourceLoc) (/path/to/swift/bin/swift+0x13c3e11)
24 0x00000000013c382d swift::TypeChecker::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc) (/path/to/swift/bin/swift+0x13c382d)
25 0x00000000013c452d swift::TypeChecker::typeCheckAbstractFunctionBody(swift::AbstractFunctionDecl*) (/path/to/swift/bin/swift+0x13c452d)
26 0x00000000013e2588 typeCheckFunctionsAndExternalDecls(swift::TypeChecker&) (/path/to/swift/bin/swift+0x13e2588)
27 0x00000000013e343a swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13e343a)
28 0x0000000000fa16cd swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xfa16cd)
29 0x00000000004abe59 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe59)
30 0x00000000004aa3f9 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa3f9)
31 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
32 0x00007f439dea0830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
33 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-22 03:07:56 +02:00
practicalswift
16cee34499 [swiftc (33 vs. 5565)] Add crasher in swift::GenericSignatureBuilder::FloatingRequirementSource::getSource(...)
Add test case for crash triggered in `swift::GenericSignatureBuilder::FloatingRequirementSource::getSource(...)`.

Current number of unresolved compiler crashers: 33 (5565 resolved)

Stack trace:

```
0 0x0000000003a7b018 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a7b018)
1 0x0000000003a7b756 SignalHandler(int) (/path/to/swift/bin/swift+0x3a7b756)
2 0x00007fbac22ee390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x0000000001572959 formProtocolRelativeType(swift::ProtocolDecl*, swift::GenericSignatureBuilder::PotentialArchetype*, swift::GenericSignatureBuilder::PotentialArchetype*) (/path/to/swift/bin/swift+0x1572959)
4 0x0000000001572970 formProtocolRelativeType(swift::ProtocolDecl*, swift::GenericSignatureBuilder::PotentialArchetype*, swift::GenericSignatureBuilder::PotentialArchetype*) (/path/to/swift/bin/swift+0x1572970)
5 0x00000000015727a6 swift::GenericSignatureBuilder::FloatingRequirementSource::getSource(swift::GenericSignatureBuilder::PotentialArchetype*) const (/path/to/swift/bin/swift+0x15727a6)
6 0x000000000157fb94 swift::GenericSignatureBuilder::addTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind) (/path/to/swift/bin/swift+0x157fb94)
7 0x000000000157d62b swift::GenericSignatureBuilder::addRequirement(swift::Requirement const&, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::ModuleDecl*, swift::SubstitutionMap const*) (/path/to/swift/bin/swift+0x157d62b)
8 0x00000000015896dd swift::GenericSignatureBuilder::InferRequirementsWalker::walkToTypePost(swift::Type) (/path/to/swift/bin/swift+0x15896dd)
9 0x00000000015e115c swift::TypeVisitor<(anonymous namespace)::Traversal, bool>::visit(swift::Type) (/path/to/swift/bin/swift+0x15e115c)
10 0x00000000015e117f swift::TypeVisitor<(anonymous namespace)::Traversal, bool>::visit(swift::Type) (/path/to/swift/bin/swift+0x15e117f)
11 0x00000000015e117f swift::TypeVisitor<(anonymous namespace)::Traversal, bool>::visit(swift::Type) (/path/to/swift/bin/swift+0x15e117f)
12 0x00000000015e0134 swift::Type::walk(swift::TypeWalker&) const (/path/to/swift/bin/swift+0x15e0134)
13 0x0000000001590bae swift::GenericSignatureBuilder::ConstraintResult llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>::callback_fn<swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*)::$_26>(long, swift::Type, swift::TypeRepr const*) (/path/to/swift/bin/swift+0x1590bae)
14 0x0000000001589522 std::_Function_handler<void (swift::Type, swift::TypeRepr const*), visitInherited(llvm::ArrayRef<swift::TypeLoc>, llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>)::$_59>::_M_invoke(std::_Any_data const&, swift::Type&&, swift::TypeRepr const*&&) (/path/to/swift/bin/swift+0x1589522)
15 0x000000000157b6a1 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x157b6a1)
16 0x000000000157bc74 swift::GenericSignatureBuilder::addConformanceRequirement(swift::GenericSignatureBuilder::PotentialArchetype*, swift::ProtocolDecl*, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x157bc74)
17 0x000000000157fc55 swift::GenericSignatureBuilder::addTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind) (/path/to/swift/bin/swift+0x157fc55)
18 0x0000000001590d41 swift::GenericSignatureBuilder::ConstraintResult llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>::callback_fn<swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*)::$_26>(long, swift::Type, swift::TypeRepr const*) (/path/to/swift/bin/swift+0x1590d41)
19 0x0000000001589522 std::_Function_handler<void (swift::Type, swift::TypeRepr const*), visitInherited(llvm::ArrayRef<swift::TypeLoc>, llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>)::$_59>::_M_invoke(std::_Any_data const&, swift::Type&&, swift::TypeRepr const*&&) (/path/to/swift/bin/swift+0x1589522)
20 0x000000000157b6a1 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x157b6a1)
21 0x000000000157b4be swift::GenericSignatureBuilder::addGenericParameterRequirements(swift::GenericTypeParamDecl*) (/path/to/swift/bin/swift+0x157b4be)
22 0x0000000001385a22 swift::TypeChecker::checkGenericParamList(swift::GenericSignatureBuilder*, swift::GenericParamList*, swift::GenericSignature*, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x1385a22)
23 0x0000000001389004 swift::TypeChecker::checkGenericEnvironment(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, bool, llvm::function_ref<void (swift::GenericSignatureBuilder&)>) (/path/to/swift/bin/swift+0x1389004)
24 0x0000000001389429 swift::TypeChecker::validateGenericTypeSignature(swift::GenericTypeDecl*) (/path/to/swift/bin/swift+0x1389429)
25 0x000000000135a200 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x135a200)
26 0x0000000001369ee3 (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x1369ee3)
27 0x0000000001358444 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1358444)
28 0x000000000136915b (anonymous namespace)::DeclChecker::visitClassDecl(swift::ClassDecl*) (/path/to/swift/bin/swift+0x136915b)
29 0x000000000135853e (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x135853e)
30 0x00000000013689fb (anonymous namespace)::DeclChecker::visitExtensionDecl(swift::ExtensionDecl*) (/path/to/swift/bin/swift+0x13689fb)
31 0x0000000001358474 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1358474)
32 0x0000000001358343 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1358343)
33 0x00000000013e3344 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13e3344)
34 0x0000000000fa16cd swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xfa16cd)
35 0x00000000004abe59 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe59)
36 0x00000000004aa3f9 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa3f9)
37 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
38 0x00007fbac07fe830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
39 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-22 01:23:34 +02:00
practicalswift
3b60f06951 [swiftc (32 vs. 5565)] Add crasher in swift::TypeChecker::resolveWitness
Add test case for crash triggered in `swift::TypeChecker::resolveWitness`.

Current number of unresolved compiler crashers: 32 (5565 resolved)

Assertion failure in [`lib/Sema/TypeCheckProtocol.cpp (line 2481)`](93701535d1/lib/Sema/TypeCheckProtocol.cpp (L2481)):

```
Assertion `!Conformance->getWitness(requirement, nullptr).getDecl() && "Already have a non-optional witness?"' failed.

When executing: void (anonymous namespace)::ConformanceChecker::recordInvalidWitness(swift::ValueDecl *)
```

Assertion context:

```c++
  assert(Conformance->isInvalid());

  // If we already recorded this witness, don't do so again.
  if (Conformance->hasWitness(requirement)) {
    assert(!Conformance->getWitness(requirement, nullptr).getDecl() &&
           "Already have a non-optional witness?");
    return;
  }

  // Record that there is no witness.
  Conformance->setWitness(requirement, Witness());
```
Stack trace:

```
0 0x0000000003a7b018 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a7b018)
1 0x0000000003a7b756 SignalHandler(int) (/path/to/swift/bin/swift+0x3a7b756)
2 0x00007effb40e4390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007effb2609428 gsignal /build/glibc-bfm8X4/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007effb260b02a abort /build/glibc-bfm8X4/glibc-2.23/stdlib/abort.c:91:0
5 0x00007effb2601bd7 __assert_fail_base /build/glibc-bfm8X4/glibc-2.23/assert/assert.c:92:0
6 0x00007effb2601c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x00000000013c110a (/path/to/swift/bin/swift+0x13c110a)
8 0x000000000139ed9b swift::TypeChecker::resolveWitness(swift::NormalProtocolConformance const*, swift::ValueDecl*) (/path/to/swift/bin/swift+0x139ed9b)
9 0x00000000015bdcfd swift::NormalProtocolConformance::getWitness(swift::ValueDecl*, swift::LazyResolver*) const (/path/to/swift/bin/swift+0x15bdcfd)
10 0x00000000015bdbcf swift::ProtocolConformance::getWitnessDecl(swift::ValueDecl*, swift::LazyResolver*) const (/path/to/swift/bin/swift+0x15bdbcf)
11 0x000000000139be1f swift::TypeChecker::findWitnessedObjCRequirements(swift::ValueDecl const*, bool) (/path/to/swift/bin/swift+0x139be1f)
12 0x000000000135e7f3 shouldMarkAsObjC(swift::TypeChecker&, swift::ValueDecl const*, bool) (/path/to/swift/bin/swift+0x135e7f3)
13 0x000000000136caeb (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl*) (/path/to/swift/bin/swift+0x136caeb)
14 0x0000000001358464 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1358464)
15 0x000000000135a494 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x135a494)
16 0x0000000001358f22 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1358f22)
17 0x000000000136915b (anonymous namespace)::DeclChecker::visitClassDecl(swift::ClassDecl*) (/path/to/swift/bin/swift+0x136915b)
18 0x000000000135853e (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x135853e)
19 0x0000000001358343 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1358343)
20 0x00000000013e3344 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13e3344)
21 0x0000000000fa16cd swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xfa16cd)
22 0x00000000004abe59 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe59)
23 0x00000000004aa3f9 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa3f9)
24 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
25 0x00007effb25f4830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
26 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-21 22:59:59 +02:00
practicalswift
e7d9773f99 [swiftc (31 vs. 5565)] Add crasher in swift::GenericSignatureBuilder::addRequirement
Add test case for crash triggered in `swift::GenericSignatureBuilder::addRequirement`.

Current number of unresolved compiler crashers: 31 (5565 resolved)

Stack trace:

```
0 0x0000000003a7b018 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a7b018)
1 0x0000000003a7b756 SignalHandler(int) (/path/to/swift/bin/swift+0x3a7b756)
2 0x00007ff6250c5390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x000000000157d9a4 swift::GenericSignatureBuilder::addRequirement(swift::RequirementRepr const*, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::SubstitutionMap const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x157d9a4)
4 0x000000000157bd6f swift::GenericSignatureBuilder::addConformanceRequirement(swift::GenericSignatureBuilder::PotentialArchetype*, swift::ProtocolDecl*, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x157bd6f)
5 0x000000000157fc55 swift::GenericSignatureBuilder::addTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind) (/path/to/swift/bin/swift+0x157fc55)
6 0x0000000001590d41 swift::GenericSignatureBuilder::ConstraintResult llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>::callback_fn<swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*)::$_26>(long, swift::Type, swift::TypeRepr const*) (/path/to/swift/bin/swift+0x1590d41)
7 0x0000000001589522 std::_Function_handler<void (swift::Type, swift::TypeRepr const*), visitInherited(llvm::ArrayRef<swift::TypeLoc>, llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>)::$_59>::_M_invoke(std::_Any_data const&, swift::Type&&, swift::TypeRepr const*&&) (/path/to/swift/bin/swift+0x1589522)
8 0x000000000157b6a1 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x157b6a1)
9 0x000000000157b4be swift::GenericSignatureBuilder::addGenericParameterRequirements(swift::GenericTypeParamDecl*) (/path/to/swift/bin/swift+0x157b4be)
10 0x0000000001385a22 swift::TypeChecker::checkGenericParamList(swift::GenericSignatureBuilder*, swift::GenericParamList*, swift::GenericSignature*, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x1385a22)
11 0x0000000001389004 swift::TypeChecker::checkGenericEnvironment(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, bool, llvm::function_ref<void (swift::GenericSignatureBuilder&)>) (/path/to/swift/bin/swift+0x1389004)
12 0x0000000001389429 swift::TypeChecker::validateGenericTypeSignature(swift::GenericTypeDecl*) (/path/to/swift/bin/swift+0x1389429)
13 0x000000000135a200 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x135a200)
14 0x0000000001359c99 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1359c99)
15 0x00000000015b259c swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, swift::NLOptions, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const (/path/to/swift/bin/swift+0x15b259c)
16 0x00000000015b0c47 swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool, bool) (/path/to/swift/bin/swift+0x15b0c47)
17 0x000000000138b607 swift::TypeChecker::lookupUnqualifiedType(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) (/path/to/swift/bin/swift+0x138b607)
18 0x00000000013dad5d resolveTopLevelIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, swift::ComponentIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13dad5d)
19 0x00000000013d52b3 resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d52b3)
20 0x00000000013d4c89 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d4c89)
21 0x00000000013d59f8 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13d59f8)
22 0x00000000013d58fc swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d58fc)
23 0x00000000013d4300 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d4300)
24 0x0000000001385c30 swift::TypeChecker::validateRequirement(swift::SourceLoc, swift::RequirementRepr&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x1385c30)
25 0x00000000013506d8 swift::TypeChecker::validateWhereClauses(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x13506d8)
26 0x0000000001353678 swift::TypeChecker::validateDeclForNameLookup(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1353678)
27 0x00000000015b0b91 swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool, bool) (/path/to/swift/bin/swift+0x15b0b91)
28 0x000000000138b607 swift::TypeChecker::lookupUnqualifiedType(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) (/path/to/swift/bin/swift+0x138b607)
29 0x00000000013dad5d resolveTopLevelIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, swift::ComponentIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13dad5d)
30 0x00000000013d52b3 resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d52b3)
31 0x00000000013d4c89 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d4c89)
32 0x00000000013d59f8 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13d59f8)
33 0x00000000013d58fc swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d58fc)
34 0x00000000013d4300 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d4300)
35 0x0000000001385bfc swift::TypeChecker::validateRequirement(swift::SourceLoc, swift::RequirementRepr&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x1385bfc)
36 0x00000000013506d8 swift::TypeChecker::validateWhereClauses(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x13506d8)
37 0x0000000001369ecb (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x1369ecb)
38 0x0000000001358444 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1358444)
39 0x0000000001358343 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1358343)
40 0x00000000013e3344 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13e3344)
41 0x0000000000fa16cd swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xfa16cd)
42 0x00000000004abe59 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe59)
43 0x00000000004aa3f9 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa3f9)
44 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
45 0x00007ff6235d5830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
46 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-21 12:00:19 +02:00
swift-ci
62164d8174 Merge pull request #10445 from practicalswift/swiftc-28788-conformance-isconcrete-concrete-isexistentialtype 2017-06-21 02:58:47 -07:00
practicalswift
0b0f032d8f [swiftc (32 vs. 5563)] Add crasher in swift::GenericSignatureBuilder::addSameTypeRequirementToConcrete
Add test case for crash triggered in `swift::GenericSignatureBuilder::addSameTypeRequirementToConcrete`.

Current number of unresolved compiler crashers: 32 (5563 resolved)

/cc @DougGregor - just wanted to let you know that this crasher caused an assertion failure for the assertion `conformance->isConcrete() || Concrete->isExistentialType()` added on 2017-02-23 by you in commit cbbf4154 :-)

Assertion failure in [`lib/AST/GenericSignatureBuilder.cpp (line 3371)`](c21699b4e5/lib/AST/GenericSignatureBuilder.cpp (L3371)):

```
Assertion `conformance->isConcrete() || Concrete->isExistentialType()' failed.

When executing: ConstraintResult swift::GenericSignatureBuilder::addSameTypeRequirementToConcrete(swift::GenericSignatureBuilder::PotentialArchetype *, swift::Type, const swift::GenericSignatureBuilder::RequirementSource *)
```

Assertion context:

```c++
    }

    conformances.insert({protocol, *conformance});

    // Abstract conformances are acceptable for existential types.
    assert(conformance->isConcrete() || Concrete->isExistentialType());

    // Update the requirement source now that we know it's concrete.
    // FIXME: Bad concrete source info.
    auto concreteSource = Source->viaConcrete(*this,
                                              conformance->isConcrete()
```
Stack trace:

```
0 0x0000000003a7b018 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a7b018)
1 0x0000000003a7b756 SignalHandler(int) (/path/to/swift/bin/swift+0x3a7b756)
2 0x00007f5d03513390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f5d01a38428 gsignal /build/glibc-bfm8X4/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f5d01a3a02a abort /build/glibc-bfm8X4/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f5d01a30bd7 __assert_fail_base /build/glibc-bfm8X4/glibc-2.23/assert/assert.c:92:0
6 0x00007f5d01a30c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x0000000001581a04 swift::GenericSignatureBuilder::addSameTypeRequirementToConcrete(swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x1581a04)
8 0x0000000001580f6c swift::GenericSignatureBuilder::addSameTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind, llvm::function_ref<void (swift::Type, swift::Type)>) (/path/to/swift/bin/swift+0x1580f6c)
9 0x000000000157895b concretizeNestedTypeFromConcreteParent(swift::GenericSignatureBuilder::PotentialArchetype*, swift::GenericSignatureBuilder::RequirementSource const*, swift::GenericSignatureBuilder::PotentialArchetype*, swift::GenericSignatureBuilder&, llvm::function_ref<swift::ProtocolConformanceRef (swift::ProtocolDecl*)>) (/path/to/swift/bin/swift+0x157895b)
10 0x0000000001577ce3 swift::GenericSignatureBuilder::PotentialArchetype::updateNestedTypeForConformance(llvm::PointerUnion<swift::AssociatedTypeDecl*, swift::TypeDecl*>, swift::GenericSignatureBuilder::PotentialArchetype::NestedTypeUpdate) (/path/to/swift/bin/swift+0x1577ce3)
11 0x00000000015762fc swift::GenericSignatureBuilder::PotentialArchetype::getNestedArchetypeAnchor(swift::Identifier, swift::GenericSignatureBuilder&, swift::GenericSignatureBuilder::PotentialArchetype::NestedTypeUpdate) (/path/to/swift/bin/swift+0x15762fc)
12 0x00000000015848fc swift::GenericSignatureBuilder::checkSameTypeConstraints(llvm::ArrayRef<swift::GenericTypeParamType*>, swift::GenericSignatureBuilder::PotentialArchetype*) (/path/to/swift/bin/swift+0x15848fc)
13 0x000000000158245a swift::GenericSignatureBuilder::finalize(swift::SourceLoc, llvm::ArrayRef<swift::GenericTypeParamType*>, bool) (/path/to/swift/bin/swift+0x158245a)
14 0x000000000138647a swift::TypeChecker::validateGenericFuncSignature(swift::AbstractFunctionDecl*) (/path/to/swift/bin/swift+0x138647a)
15 0x000000000136c69b (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl*) (/path/to/swift/bin/swift+0x136c69b)
16 0x0000000001358464 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1358464)
17 0x000000000135a494 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x135a494)
18 0x00000000015761cb swift::GenericSignatureBuilder::PotentialArchetype::getNestedArchetypeAnchor(swift::Identifier, swift::GenericSignatureBuilder&, swift::GenericSignatureBuilder::PotentialArchetype::NestedTypeUpdate) (/path/to/swift/bin/swift+0x15761cb)
19 0x00000000015848fc swift::GenericSignatureBuilder::checkSameTypeConstraints(llvm::ArrayRef<swift::GenericTypeParamType*>, swift::GenericSignatureBuilder::PotentialArchetype*) (/path/to/swift/bin/swift+0x15848fc)
20 0x000000000158245a swift::GenericSignatureBuilder::finalize(swift::SourceLoc, llvm::ArrayRef<swift::GenericTypeParamType*>, bool) (/path/to/swift/bin/swift+0x158245a)
21 0x0000000001389040 swift::TypeChecker::checkGenericEnvironment(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, bool, llvm::function_ref<void (swift::GenericSignatureBuilder&)>) (/path/to/swift/bin/swift+0x1389040)
22 0x0000000001389429 swift::TypeChecker::validateGenericTypeSignature(swift::GenericTypeDecl*) (/path/to/swift/bin/swift+0x1389429)
23 0x000000000135a200 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x135a200)
24 0x0000000001369ee3 (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x1369ee3)
25 0x0000000001358444 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1358444)
26 0x0000000001358343 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1358343)
27 0x00000000013e3344 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13e3344)
28 0x0000000000fa16cd swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xfa16cd)
29 0x00000000004abe59 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe59)
30 0x00000000004aa3f9 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa3f9)
31 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
32 0x00007f5d01a23830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
33 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-21 10:49:45 +02:00
Slava Pestov
151f38630b AST: Fix DeclContext::getAsTypeOrTypeExtensionContext() for extensions of typealiases 2017-06-21 00:44:32 -07:00
practicalswift
6b659ed869 [swiftc (31 vs. 5563)] Add crasher in swift::TypeBase::getContextSubstitutions
Add test case for crash triggered in `swift::TypeBase::getContextSubstitutions`.

Current number of unresolved compiler crashers: 31 (5563 resolved)

Stack trace:

```
0 0x0000000003a765e8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a765e8)
1 0x0000000003a76d26 SignalHandler(int) (/path/to/swift/bin/swift+0x3a76d26)
2 0x00007f8cf176b390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00000000015cef7b swift::TypeBase::getContextSubstitutions(swift::DeclContext const*, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x15cef7b)
4 0x00000000015ca9c0 swift::TypeBase::getContextSubstitutionMap(swift::ModuleDecl*, swift::DeclContext const*, swift::GenericEnvironment*) (/path/to/swift/bin/swift+0x15ca9c0)
5 0x0000000001445fbf swift::createDesignatedInitOverride(swift::TypeChecker&, swift::ClassDecl*, swift::ConstructorDecl*, swift::DesignatedInitKind) (/path/to/swift/bin/swift+0x1445fbf)
6 0x000000000135cd06 swift::TypeChecker::addImplicitConstructors(swift::NominalTypeDecl*) (/path/to/swift/bin/swift+0x135cd06)
7 0x0000000001365f65 (anonymous namespace)::DeclChecker::visitClassDecl(swift::ClassDecl*) (/path/to/swift/bin/swift+0x1365f65)
8 0x000000000135538e (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x135538e)
9 0x0000000001365e3b (anonymous namespace)::DeclChecker::visitStructDecl(swift::StructDecl*) (/path/to/swift/bin/swift+0x1365e3b)
10 0x0000000001355274 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1355274)
11 0x000000000136584b (anonymous namespace)::DeclChecker::visitExtensionDecl(swift::ExtensionDecl*) (/path/to/swift/bin/swift+0x136584b)
12 0x00000000013552c4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x13552c4)
13 0x0000000001355193 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1355193)
14 0x00000000013dff8a swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13dff8a)
15 0x0000000000f9de7d swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf9de7d)
16 0x00000000004abe79 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe79)
17 0x00000000004aa419 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa419)
18 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
19 0x00007f8cefc7b830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
20 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-20 23:56:27 +02:00
practicalswift
c267d30fb9 [swiftc (30 vs. 5563)] Add crasher in swift::TypeChecker::resolveIdentifierType
Add test case for crash triggered in `swift::TypeChecker::resolveIdentifierType`.

Current number of unresolved compiler crashers: 30 (5563 resolved)

/cc @slavapestov - just wanted to let you know that this crasher caused an assertion failure for the assertion `memberType && "Received null dependent member type"` added on 2017-05-21 by you in commit 0eac6f017 :-)

Assertion failure in [`lib/Sema/TypeCheckType.cpp (line 1389)`](2808583c6a/lib/Sema/TypeCheckType.cpp (L1389)):

```
Assertion `memberType && "Received null dependent member type"' failed.

When executing: swift::Type resolveNestedIdentTypeComponent(swift::TypeChecker &, swift::DeclContext *, swift::Type, swift::SourceRange, swift::ComponentIdentTypeRepr *, TypeResolutionOptions, bool, swift::GenericTypeResolver *, UnsatisfiedDependency *)
```

Assertion context:

```c++
  // If the parent is a type parameter, the member is a dependent member,
  // and we skip much of the work below.
  if (parentTy->isTypeParameter()) {
    auto memberType = resolver->resolveDependentMemberType(parentTy, DC,
                                                      parentRange, comp);
    assert(memberType && "Received null dependent member type");
    return memberType;
  }

  // Phase 2: If a declaration has already been bound, use it.
  if (auto *typeDecl = comp->getBoundDecl()) {
```
Stack trace:

```
0 0x0000000003a765e8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a765e8)
1 0x0000000003a76d26 SignalHandler(int) (/path/to/swift/bin/swift+0x3a76d26)
2 0x00007f6e95d11390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f6e94236428 gsignal /build/glibc-bfm8X4/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f6e9423802a abort /build/glibc-bfm8X4/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f6e9422ebd7 __assert_fail_base /build/glibc-bfm8X4/glibc-2.23/assert/assert.c:92:0
6 0x00007f6e9422ec82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x00000000013d1fda resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d1fda)
8 0x00000000013d1939 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d1939)
9 0x00000000013d26a8 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13d26a8)
10 0x00000000013d25ac swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d25ac)
11 0x00000000013d0fb0 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d0fb0)
12 0x0000000001383737 checkGenericFuncSignature(swift::TypeChecker&, swift::GenericSignatureBuilder*, swift::AbstractFunctionDecl*, swift::GenericTypeResolver&) (/path/to/swift/bin/swift+0x1383737)
13 0x00000000013832ec swift::TypeChecker::validateGenericFuncSignature(swift::AbstractFunctionDecl*) (/path/to/swift/bin/swift+0x13832ec)
14 0x00000000013694ab (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl*) (/path/to/swift/bin/swift+0x13694ab)
15 0x00000000013552b4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x13552b4)
16 0x00000000013572e4 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x13572e4)
17 0x0000000001355d72 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1355d72)
18 0x000000000136704b (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x136704b)
19 0x0000000001355294 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1355294)
20 0x0000000001355193 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1355193)
21 0x00000000013dff04 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13dff04)
22 0x0000000000f9de7d swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf9de7d)
23 0x00000000004abe79 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe79)
24 0x00000000004aa419 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa419)
25 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
26 0x00007f6e94221830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
27 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-20 22:27:40 +02:00
practicalswift
ec534ad910 [swiftc (29 vs. 5563)] Add crasher in swift::TypeChecker::validateGenericTypeSignature(...)
Add test case for crash triggered in `swift::TypeChecker::validateGenericTypeSignature(...)`.

Current number of unresolved compiler crashers: 29 (5563 resolved)

/cc @slavapestov - just wanted to let you know that this crasher caused an assertion failure for the assertion `(GenericSigOrEnv.isNull() || getGenericSignature()->getCanonicalSignature() == genericEnv->getGenericSignature()->getCanonicalSignature()) && "set a generic environment with a different generic signature"` added on 2017-02-17 by you in commit ad78604e :-)

Assertion failure in [`lib/AST/Decl.cpp (line 665)`](531c2e8868/lib/AST/Decl.cpp (L665)):

```
Assertion `(GenericSigOrEnv.isNull() || getGenericSignature()->getCanonicalSignature() == genericEnv->getGenericSignature()->getCanonicalSignature()) && "set a generic environment with a different generic signature"' failed.

When executing: void swift::GenericContext::setGenericEnvironment(swift::GenericEnvironment *)
```

Assertion context:

```c++

void GenericContext::setGenericEnvironment(GenericEnvironment *genericEnv) {
  assert((GenericSigOrEnv.isNull() ||
          getGenericSignature()->getCanonicalSignature() ==
            genericEnv->getGenericSignature()->getCanonicalSignature()) &&
         "set a generic environment with a different generic signature");
  this->GenericSigOrEnv = genericEnv;
  if (genericEnv)
    genericEnv->setOwningDeclContext(this);
}

```
Stack trace:

```
0 0x0000000003a765e8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a765e8)
1 0x0000000003a76d26 SignalHandler(int) (/path/to/swift/bin/swift+0x3a76d26)
2 0x00007f147faff390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f147e024428 gsignal /build/glibc-bfm8X4/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f147e02602a abort /build/glibc-bfm8X4/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f147e01cbd7 __assert_fail_base /build/glibc-bfm8X4/glibc-2.23/assert/assert.c:92:0
6 0x00007f147e01cc82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x000000000153d04b (/path/to/swift/bin/swift+0x153d04b)
8 0x0000000001386244 swift::TypeChecker::validateGenericTypeSignature(swift::GenericTypeDecl*) (/path/to/swift/bin/swift+0x1386244)
9 0x0000000001357050 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1357050)
10 0x0000000001356ae9 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1356ae9)
11 0x0000000001388bdd swift::TypeChecker::lookupMemberType(swift::DeclContext*, swift::Type, swift::Identifier, swift::OptionSet<swift::NameLookupFlags, unsigned int>) (/path/to/swift/bin/swift+0x1388bdd)
12 0x00000000013d218b resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d218b)
13 0x00000000013d1939 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d1939)
14 0x00000000013d26a8 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13d26a8)
15 0x00000000013d25ac swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d25ac)
16 0x00000000013d0fb0 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13d0fb0)
17 0x000000000148c461 swift::IterativeTypeChecker::processResolveInheritedClauseEntry(std::pair<llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>, unsigned int>, llvm::function_ref<bool (swift::TypeCheckRequest)>) (/path/to/swift/bin/swift+0x148c461)
18 0x0000000001455fc6 swift::IterativeTypeChecker::satisfy(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1455fc6)
19 0x000000000134d699 swift::TypeChecker::resolveInheritanceClause(llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>) (/path/to/swift/bin/swift+0x134d699)
20 0x0000000001576e24 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x1576e24)
21 0x00000000015774f4 swift::GenericSignatureBuilder::addConformanceRequirement(swift::GenericSignatureBuilder::PotentialArchetype*, swift::ProtocolDecl*, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x15774f4)
22 0x000000000157ae25 swift::GenericSignatureBuilder::addTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind) (/path/to/swift/bin/swift+0x157ae25)
23 0x000000000158c811 swift::GenericSignatureBuilder::ConstraintResult llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>::callback_fn<swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*)::$_26>(long, swift::Type, swift::TypeRepr const*) (/path/to/swift/bin/swift+0x158c811)
24 0x0000000001584ff2 std::_Function_handler<void (swift::Type, swift::TypeRepr const*), visitInherited(llvm::ArrayRef<swift::TypeLoc>, llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>)::$_60>::_M_invoke(std::_Any_data const&, swift::Type&&, swift::TypeRepr const*&&) (/path/to/swift/bin/swift+0x1584ff2)
25 0x0000000001576f21 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x1576f21)
26 0x00000000015774f4 swift::GenericSignatureBuilder::addConformanceRequirement(swift::GenericSignatureBuilder::PotentialArchetype*, swift::ProtocolDecl*, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x15774f4)
27 0x000000000157ae25 swift::GenericSignatureBuilder::addTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind) (/path/to/swift/bin/swift+0x157ae25)
28 0x000000000158c811 swift::GenericSignatureBuilder::ConstraintResult llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>::callback_fn<swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*)::$_26>(long, swift::Type, swift::TypeRepr const*) (/path/to/swift/bin/swift+0x158c811)
29 0x0000000001584ff2 std::_Function_handler<void (swift::Type, swift::TypeRepr const*), visitInherited(llvm::ArrayRef<swift::TypeLoc>, llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>)::$_60>::_M_invoke(std::_Any_data const&, swift::Type&&, swift::TypeRepr const*&&) (/path/to/swift/bin/swift+0x1584ff2)
30 0x0000000001576f21 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x1576f21)
31 0x0000000001576d3e swift::GenericSignatureBuilder::addGenericParameterRequirements(swift::GenericTypeParamDecl*) (/path/to/swift/bin/swift+0x1576d3e)
32 0x0000000001382832 swift::TypeChecker::checkGenericParamList(swift::GenericSignatureBuilder*, swift::GenericParamList*, swift::GenericSignature*, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x1382832)
33 0x0000000001385e14 swift::TypeChecker::checkGenericEnvironment(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, bool, llvm::function_ref<void (swift::GenericSignatureBuilder&)>) (/path/to/swift/bin/swift+0x1385e14)
34 0x000000000135bf8c checkExtensionGenericParams(swift::TypeChecker&, swift::ExtensionDecl*, swift::Type, swift::GenericParamList*) (/path/to/swift/bin/swift+0x135bf8c)
35 0x000000000134f56f swift::TypeChecker::validateExtension(swift::ExtensionDecl*) (/path/to/swift/bin/swift+0x134f56f)
36 0x00000000013655eb (anonymous namespace)::DeclChecker::visitExtensionDecl(swift::ExtensionDecl*) (/path/to/swift/bin/swift+0x13655eb)
37 0x00000000013552c4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x13552c4)
38 0x0000000001355193 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1355193)
39 0x00000000013dff04 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13dff04)
40 0x0000000000f9de7d swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf9de7d)
41 0x00000000004abe79 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe79)
42 0x00000000004aa419 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa419)
43 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
44 0x00007f147e00f830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
45 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-20 20:54:40 +02:00
practicalswift
59670dd2e8 [swiftc (28 vs. 5563)] Add crasher in swift::GenericSignature::getConformanceAccessPath
Add test case for crash triggered in `swift::GenericSignature::getConformanceAccessPath`.

Current number of unresolved compiler crashers: 28 (5563 resolved)

/cc @DougGregor - just wanted to let you know that this crasher caused an assertion failure for the assertion `hasConformanceInSignature(inProtocol->getRequirementSignature(), subjectType, conformingProto) && "missing explicit conformance in requirement signature"` added on 2017-03-08 by you in commit 1f8b0f9b :-)

Assertion failure in [`lib/AST/GenericSignature.cpp (line 846)`](36f689d1d2/lib/AST/GenericSignature.cpp (L846)):

```
Assertion `hasConformanceInSignature(inProtocol->getRequirementSignature(), subjectType, conformingProto) && "missing explicit conformance in requirement signature"' failed.

When executing: auto swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl *, swift::ModuleDecl &)::(anonymous class)::operator()(swift::GenericSignature *, const RequirementSource *, swift::ProtocolDecl *, swift::Type) const
```

Assertion context:

```c++
          ->getCanonicalTypeInContext(subjectType,
                                      *inProtocol->getParentModule());

        assert(hasConformanceInSignature(inProtocol->getRequirementSignature(),
                                         subjectType, conformingProto) &&
               "missing explicit conformance in requirement signature");

        // Record this step.
        path.path.push_back({subjectType, conformingProto});
        return;
      }
```
Stack trace:

```
0 0x0000000003a765e8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a765e8)
1 0x0000000003a76d26 SignalHandler(int) (/path/to/swift/bin/swift+0x3a76d26)
2 0x00007f54b7228390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f54b574d428 gsignal /build/glibc-bfm8X4/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f54b574f02a abort /build/glibc-bfm8X4/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f54b5745bd7 __assert_fail_base /build/glibc-bfm8X4/glibc-2.23/assert/assert.c:92:0
6 0x00007f54b5745c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x000000000156a921 std::_Function_handler<void (swift::GenericSignature*, swift::GenericSignatureBuilder::RequirementSource const*, swift::ProtocolDecl*, swift::Type), swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl*, swift::ModuleDecl&)::$_11>::_M_invoke(std::_Any_data const&, swift::GenericSignature*&&, swift::GenericSignatureBuilder::RequirementSource const*&&, swift::ProtocolDecl*&&, swift::Type&&) (/path/to/swift/bin/swift+0x156a921)
8 0x000000000156abc3 std::_Function_handler<void (swift::GenericSignature*, swift::GenericSignatureBuilder::RequirementSource const*, swift::ProtocolDecl*, swift::Type), swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl*, swift::ModuleDecl&)::$_11>::_M_invoke(std::_Any_data const&, swift::GenericSignature*&&, swift::GenericSignatureBuilder::RequirementSource const*&&, swift::ProtocolDecl*&&, swift::Type&&) (/path/to/swift/bin/swift+0x156abc3)
9 0x0000000001569909 swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl*, swift::ModuleDecl&) (/path/to/swift/bin/swift+0x1569909)
10 0x00000000015c1b15 swift::SubstitutionMap::lookupConformance(swift::CanType, swift::ProtocolDecl*) const (/path/to/swift/bin/swift+0x15c1b15)
11 0x000000000156a32e bool llvm::function_ref<bool (swift::Type, llvm::ArrayRef<swift::Requirement>)>::callback_fn<swift::GenericSignature::getSubstitutions(swift::SubstitutionMap const&, llvm::SmallVectorImpl<swift::Substitution>&) const::$_8>(long, swift::Type, llvm::ArrayRef<swift::Requirement>) (/path/to/swift/bin/swift+0x156a32e)
12 0x00000000015671c7 swift::GenericSignature::enumeratePairedRequirements(llvm::function_ref<bool (swift::Type, llvm::ArrayRef<swift::Requirement>)>) const (/path/to/swift/bin/swift+0x15671c7)
13 0x0000000001568732 swift::GenericSignature::getSubstitutions(swift::SubstitutionMap const&, llvm::SmallVectorImpl<swift::Substitution>&) const (/path/to/swift/bin/swift+0x1568732)
14 0x00000000013e3059 swift::constraints::Solution::computeSubstitutions(swift::GenericSignature*, swift::constraints::ConstraintLocator*, llvm::SmallVectorImpl<swift::Substitution>&) const (/path/to/swift/bin/swift+0x13e3059)
15 0x00000000013e9bd2 (anonymous namespace)::ExprRewriter::buildMemberRef(swift::Expr*, swift::Type, swift::SourceLoc, swift::ValueDecl*, swift::DeclNameLoc, swift::Type, swift::constraints::ConstraintLocatorBuilder, swift::constraints::ConstraintLocatorBuilder, bool, swift::FunctionRefKind, swift::AccessSemantics, bool) (/path/to/swift/bin/swift+0x13e9bd2)
16 0x00000000013f6a4d swift::ASTVisitor<(anonymous namespace)::ExprRewriter, swift::Expr*, void, void, void, void, void>::visit(swift::Expr*) (/path/to/swift/bin/swift+0x13f6a4d)
17 0x00000000013e85d4 (anonymous namespace)::ExprRewriter::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x13e85d4)
18 0x00000000013ee081 (anonymous namespace)::ExprWalker::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x13ee081)
19 0x000000000151f1ec swift::Expr::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0x151f1ec)
20 0x00000000013e5560 swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) (/path/to/swift/bin/swift+0x13e5560)
21 0x000000000133e2df swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x133e2df)
22 0x00000000013c3928 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13c3928)
23 0x00000000013c2416 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13c2416)
24 0x00000000013c07bd swift::TypeChecker::typeCheckFunctionBodyUntil(swift::FuncDecl*, swift::SourceLoc) (/path/to/swift/bin/swift+0x13c07bd)
25 0x00000000013c062d swift::TypeChecker::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc) (/path/to/swift/bin/swift+0x13c062d)
26 0x00000000013c133d swift::TypeChecker::typeCheckAbstractFunctionBody(swift::AbstractFunctionDecl*) (/path/to/swift/bin/swift+0x13c133d)
27 0x00000000013df148 typeCheckFunctionsAndExternalDecls(swift::TypeChecker&) (/path/to/swift/bin/swift+0x13df148)
28 0x00000000013dfffa swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13dfffa)
29 0x0000000000f9de7d swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf9de7d)
30 0x00000000004abe79 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe79)
31 0x00000000004aa419 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa419)
32 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
33 0x00007f54b5738830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
34 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-20 17:36:48 +02:00
practicalswift
d394810d06 [swiftc (27 vs. 5563)] Add crasher in swift::ProtocolCompositionType::get
Add test case for crash triggered in `swift::ProtocolCompositionType::get`.

Current number of unresolved compiler crashers: 27 (5563 resolved)

/cc @slavapestov - just wanted to let you know that this crasher caused an assertion failure for the assertion `(!Superclass || Superclass->isEqual(T)) && "Should have diagnosed multiple superclasses by now"` added on 2017-04-09 by you in commit 32a75058 :-)

Assertion failure in [`lib/AST/Type.cpp (line 911)`](ffcca776a2/lib/AST/Type.cpp (L911)):

```
Assertion `(!Superclass || Superclass->isEqual(T)) && "Should have diagnosed multiple superclasses by now"' failed.

When executing: void addProtocols(swift::Type, SmallVectorImpl<swift::ProtocolDecl *> &, swift::Type &, bool &)
```

Assertion context:

```c++
  if (auto Proto = T->getAs<ProtocolType>()) {
    auto KnownPos = Known.find(Proto->getDecl());
    if (KnownPos != Known.end()) {
      // We've come across a protocol that is in our original list. Zap it.
      Protocols[KnownPos->second] = nullptr;
      ZappedAny = true;
    }

    if (Visited.insert(Proto->getDecl()).second) {
      Stack.push_back(Proto->getDecl());
      for (auto Inherited : Proto->getDecl()->getInheritedProtocols())
```
Stack trace:

```
0 0x0000000003a765e8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a765e8)
1 0x0000000003a76d26 SignalHandler(int) (/path/to/swift/bin/swift+0x3a76d26)
2 0x00007f305c203390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f305a728428 gsignal /build/glibc-bfm8X4/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f305a72a02a abort /build/glibc-bfm8X4/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f305a720bd7 __assert_fail_base /build/glibc-bfm8X4/glibc-2.23/assert/assert.c:92:0
6 0x00007f305a720c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x00000000015cde6b (/path/to/swift/bin/swift+0x15cde6b)
8 0x00000000015c9951 swift::ProtocolCompositionType::get(swift::ASTContext const&, llvm::ArrayRef<swift::Type>, bool) (/path/to/swift/bin/swift+0x15c9951)
9 0x00000000015c5715 swift::TypeBase::getCanonicalType() (/path/to/swift/bin/swift+0x15c5715)
10 0x00000000012daff3 swift::ASTVisitor<(anonymous namespace)::ConstraintGenerator, swift::Type, void, void, void, void, void>::visit(swift::Expr*) (/path/to/swift/bin/swift+0x12daff3)
11 0x00000000012e0ff8 (anonymous namespace)::ConstraintWalker::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x12e0ff8)
12 0x00000000015226f1 (anonymous namespace)::Traversal::visitCollectionExpr(swift::CollectionExpr*) (/path/to/swift/bin/swift+0x15226f1)
13 0x000000000151f1cb swift::Expr::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0x151f1cb)
14 0x00000000012d7b71 swift::constraints::ConstraintSystem::generateConstraints(swift::Expr*) (/path/to/swift/bin/swift+0x12d7b71)
15 0x00000000013017d6 swift::constraints::ConstraintSystem::solve(swift::Expr*&, swift::Type, swift::ExprTypeCheckListener*, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::FreeTypeVariableBinding) (/path/to/swift/bin/swift+0x13017d6)
16 0x000000000133a724 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>) (/path/to/swift/bin/swift+0x133a724)
17 0x000000000133e1f0 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x133e1f0)
18 0x00000000013c24e5 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13c24e5)
19 0x00000000013c1cf6 swift::TypeChecker::typeCheckTopLevelCodeDecl(swift::TopLevelCodeDecl*) (/path/to/swift/bin/swift+0x13c1cf6)
20 0x00000000013dff70 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13dff70)
21 0x0000000000f9de7d swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf9de7d)
22 0x00000000004abe79 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4abe79)
23 0x00000000004aa419 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4aa419)
24 0x0000000000465697 main (/path/to/swift/bin/swift+0x465697)
25 0x00007f305a713830 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325:0
26 0x0000000000462d39 _start (/path/to/swift/bin/swift+0x462d39)
```
2017-06-20 16:10:22 +02:00
practicalswift
8740ac2ef7 [swiftc (26 vs. 5563)] Add crasher in swift::TypeChecker::validateDecl(...)
Add test case for crash triggered in `swift::TypeChecker::validateDecl(...)`.

Current number of unresolved compiler crashers: 26 (5563 resolved)

/cc @slavapestov - just wanted to let you know that this crasher caused an assertion failure for the assertion `hasInterfaceType() && "No interface type was set"` added on 2016-12-04 by you in commit c1a21613 :-)

Assertion failure in [`lib/AST/Decl.cpp (line 1813)`](1a9ccd347c/lib/AST/Decl.cpp (L1813)):

```
Assertion `hasInterfaceType() && "No interface type was set"' failed.

When executing: swift::Type swift::ValueDecl::getInterfaceType() const
```

Assertion context:

```c++
bool ValueDecl::hasInterfaceType() const {
  return !TypeAndAccess.getPointer().isNull();
}

Type ValueDecl::getInterfaceType() const {
  assert(hasInterfaceType() && "No interface type was set");
  return TypeAndAccess.getPointer();
}

void ValueDecl::setInterfaceType(Type type) {
  // lldb creates global typealiases with archetypes in them.
```
Stack trace:

```
0 0x0000000003a5fdb8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5fdb8)
1 0x0000000003a604f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a604f6)
2 0x00007f798906f390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f7987595428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f798759702a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f798758dbd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007f798758dc82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x000000000152d1bf (/path/to/swift/bin/swift+0x152d1bf)
8 0x0000000001340259 (anonymous namespace)::DeclChecker::checkOverrides(swift::TypeChecker&, swift::ValueDecl*) (/path/to/swift/bin/swift+0x1340259)
9 0x0000000001356016 (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl*) (/path/to/swift/bin/swift+0x1356016)
10 0x0000000001341ea4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341ea4)
11 0x0000000001343ecd swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1343ecd)
12 0x000000000159ab1c swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, swift::NLOptions, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const (/path/to/swift/bin/swift+0x159ab1c)
13 0x00000000013750c6 swift::TypeChecker::lookupMember(swift::DeclContext*, swift::Type, swift::DeclName, swift::OptionSet<swift::NameLookupFlags, unsigned int>)::$_1::operator()() const (/path/to/swift/bin/swift+0x13750c6)
14 0x0000000001374f77 swift::TypeChecker::lookupMember(swift::DeclContext*, swift::Type, swift::DeclName, swift::OptionSet<swift::NameLookupFlags, unsigned int>) (/path/to/swift/bin/swift+0x1374f77)
15 0x00000000013c51f4 diagnoseUnknownType(swift::TypeChecker&, swift::DeclContext*, swift::Type, swift::SourceRange, swift::ComponentIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::OptionSet<swift::NameLookupFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13c51f4)
16 0x00000000013bee85 resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bee85)
17 0x00000000013be4f9 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13be4f9)
18 0x00000000013bf268 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13bf268)
19 0x00000000013bf16c swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bf16c)
20 0x00000000013bdb70 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bdb70)
21 0x0000000001355f35 (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl*) (/path/to/swift/bin/swift+0x1355f35)
22 0x0000000001341ea4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341ea4)
23 0x000000000135292b (anonymous namespace)::DeclChecker::visitClassDecl(swift::ClassDecl*) (/path/to/swift/bin/swift+0x135292b)
24 0x0000000001341f7e (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341f7e)
25 0x0000000001341d83 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341d83)
26 0x00000000013ccaf5 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13ccaf5)
27 0x0000000000f93b16 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93b16)
28 0x00000000004ab3d9 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4ab3d9)
29 0x00000000004a996c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a996c)
30 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
31 0x00007f7987580830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
32 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-19 06:59:44 +02:00
practicalswift
c924d6373c [swiftc (25 vs. 5563)] Add crasher in swift::TypeChecker::substMemberTypeWithBase
Add test case for crash triggered in `swift::TypeChecker::substMemberTypeWithBase`.

Current number of unresolved compiler crashers: 25 (5563 resolved)

/cc @slavapestov - just wanted to let you know that this crasher caused an assertion failure for the assertion `(!Parent || Parent->is<NominalType>() || Parent->is<BoundGenericType>() || Parent->is<UnboundGenericType>()) && "parent must be a nominal type"` added on 2016-11-03 by you in commit 5780a9f52 :-)

Assertion failure in [`lib/AST/ASTContext.cpp (line 2841)`](a020ccc25f/lib/AST/ASTContext.cpp (L2841)):

```
Assertion `(!Parent || Parent->is<NominalType>() || Parent->is<BoundGenericType>() || Parent->is<UnboundGenericType>()) && "parent must be a nominal type"' failed.

When executing: static swift::NominalType *swift::NominalType::get(swift::NominalTypeDecl *, swift::Type, const swift::ASTContext &)
```

Assertion context:

```c++

  return newType;
}

NominalType *NominalType::get(NominalTypeDecl *D, Type Parent, const ASTContext &C) {
  assert((isa<ProtocolDecl>(D) || !D->getGenericParams()) &&
         "must be a non-generic type decl");
  assert((!Parent || Parent->is<NominalType>() ||
          Parent->is<BoundGenericType>() ||
          Parent->is<UnboundGenericType>()) &&
         "parent must be a nominal type");
```
Stack trace:

```
0 0x0000000003a5fdb8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5fdb8)
1 0x0000000003a604f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a604f6)
2 0x00007f3237303390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f3235829428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f323582b02a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f3235821bd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007f3235821c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x000000000149068e (/path/to/swift/bin/swift+0x149068e)
8 0x00000000013bd1b7 swift::TypeChecker::substMemberTypeWithBase(swift::ModuleDecl*, swift::TypeDecl*, swift::Type) (/path/to/swift/bin/swift+0x13bd1b7)
9 0x00000000013beaf5 resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13beaf5)
10 0x00000000013be8ff resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13be8ff)
11 0x00000000013be4f9 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13be4f9)
12 0x00000000013bf268 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13bf268)
13 0x00000000013bf16c swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bf16c)
14 0x00000000013bdb70 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bdb70)
15 0x0000000001355f35 (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl*) (/path/to/swift/bin/swift+0x1355f35)
16 0x0000000001341ea4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341ea4)
17 0x00000000013539cb (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x13539cb)
18 0x0000000001341e84 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341e84)
19 0x0000000001341d83 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341d83)
20 0x00000000013ccaf5 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13ccaf5)
21 0x0000000000f93b16 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93b16)
22 0x00000000004ab3d9 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4ab3d9)
23 0x00000000004a996c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a996c)
24 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
25 0x00007f3235814830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
26 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-19 05:52:16 +02:00
practicalswift
6cbeae5619 [swiftc (24 vs. 5563)] Add crasher in swift::ValueDecl::getFormalAccess
Add test case for crash triggered in `swift::ValueDecl::getFormalAccess`.

Current number of unresolved compiler crashers: 24 (5563 resolved)

/cc @jrose-apple - just wanted to let you know that this crasher caused an assertion failure for the assertion `hasAccessibility() && "accessibility not computed yet"` added on 2014-06-24 by you in commit 6cca3529e :-)

Assertion failure in [`include/swift/AST/Decl.h (line 2178)`](fbb153b759/include/swift/AST/Decl.h (L2178)):

```
Assertion `hasAccessibility() && "accessibility not computed yet"' failed.

When executing: swift::Accessibility swift::ValueDecl::getFormalAccess(const swift::DeclContext *, bool) const
```

Assertion context:

```c++
  /// taken into account.
  ///
  /// \sa getFormalAccessScope
  Accessibility getFormalAccess(const DeclContext *useDC = nullptr,
                                bool respectVersionedAttr = false) const {
    assert(hasAccessibility() && "accessibility not computed yet");
    Accessibility result = TypeAndAccess.getInt().getValue();
    if (respectVersionedAttr &&
        result == Accessibility::Internal &&
        isVersionedInternalDecl()) {
      assert(!useDC);
```
Stack trace:

```
0 0x0000000003a5fdb8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5fdb8)
1 0x0000000003a604f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a604f6)
2 0x00007f236baba390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f2369fe0428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f2369fe202a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f2369fd8bd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007f2369fd8c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x000000000152ea73 swift::ValueDecl::getFormalAccess(swift::DeclContext const*, bool) const (/path/to/swift/bin/swift+0x152ea73)
8 0x000000000152c3b6 swift::ValueDecl::getFormalAccessScope(swift::DeclContext const*, bool) const (/path/to/swift/bin/swift+0x152c3b6)
9 0x000000000153c371 swift::DeclContext::getResilienceExpansion() const (/path/to/swift/bin/swift+0x153c371)
10 0x000000000145b552 swift::TypeChecker::diagnoseInlineableDeclRef(swift::SourceLoc, swift::ValueDecl const*, swift::DeclContext const*) (/path/to/swift/bin/swift+0x145b552)
11 0x000000000146a0f6 (anonymous namespace)::AvailabilityWalker::diagAvailability(swift::ValueDecl const*, swift::SourceRange, swift::ApplyExpr const*, bool, bool) (/path/to/swift/bin/swift+0x146a0f6)
12 0x00000000014688fe swift::diagnoseDeclAvailability(swift::ValueDecl const*, swift::TypeChecker&, swift::DeclContext*, swift::SourceRange, bool, bool) (/path/to/swift/bin/swift+0x14688fe)
13 0x00000000013be764 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13be764)
14 0x00000000013bf268 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13bf268)
15 0x00000000013bf16c swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bf16c)
16 0x00000000013bdb70 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bdb70)
17 0x00000000013778c9 validateParameterType(swift::ParamDecl*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver&, swift::TypeChecker&) (/path/to/swift/bin/swift+0x13778c9)
18 0x0000000001377779 swift::TypeChecker::typeCheckParameterList(swift::ParameterList*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver&) (/path/to/swift/bin/swift+0x1377779)
19 0x0000000001362a93 (anonymous namespace)::DeclChecker::semaFuncParamPatterns(swift::AbstractFunctionDecl*, swift::GenericTypeResolver&) (/path/to/swift/bin/swift+0x1362a93)
20 0x0000000001355f4b (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl*) (/path/to/swift/bin/swift+0x1355f4b)
21 0x0000000001341ea4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341ea4)
22 0x0000000001343ecd swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1343ecd)
23 0x0000000001595695 swift::namelookup::ResolutionKind recordImportDecls<llvm::DenseMap<swift::DeclBaseName, std::pair<swift::namelookup::ResolutionKind, llvm::SmallSet<swift::CanType, 4u, (anonymous namespace)::SortCanType> >, llvm::DenseMapInfo<swift::DeclBaseName>, llvm::detail::DenseMapPair<swift::DeclBaseName, std::pair<swift::namelookup::ResolutionKind, llvm::SmallSet<swift::CanType, 4u, (anonymous namespace)::SortCanType> > > > >(swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&, llvm::ArrayRef<swift::ValueDecl*>, llvm::DenseMap<swift::DeclBaseName, std::pair<swift::namelookup::ResolutionKind, llvm::SmallSet<swift::CanType, 4u, (anonymous namespace)::SortCanType> >, llvm::DenseMapInfo<swift::DeclBaseName>, llvm::detail::DenseMapPair<swift::DeclBaseName, std::pair<swift::namelookup::ResolutionKind, llvm::SmallSet<swift::CanType, 4u, (anonymous namespace)::SortCanType> > > >&, swift::namelookup::ResolutionKind) (/path/to/swift/bin/swift+0x1595695)
24 0x00000000015938aa void lookupInModule<llvm::DenseMap<swift::DeclBaseName, std::pair<swift::namelookup::ResolutionKind, llvm::SmallSet<swift::CanType, 4u, (anonymous namespace)::SortCanType> >, llvm::DenseMapInfo<swift::DeclBaseName>, llvm::detail::DenseMapPair<swift::DeclBaseName, std::pair<swift::namelookup::ResolutionKind, llvm::SmallSet<swift::CanType, 4u, (anonymous namespace)::SortCanType> > > >, swift::namelookup::lookupVisibleDeclsInModule(swift::ModuleDecl*, llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::NLKind, swift::namelookup::ResolutionKind, swift::LazyResolver*, swift::DeclContext const*, llvm::ArrayRef<std::pair<llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >)::$_1>(swift::ModuleDecl*, llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::namelookup::ResolutionKind, bool, swift::LazyResolver*, llvm::SmallDenseMap<std::pair<llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*>, llvm::TinyPtrVector<swift::ValueDecl*>, 32u, llvm::DenseMapInfo<std::pair<llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >, llvm::detail::DenseMapPair<std::pair<llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*>, llvm::TinyPtrVector<swift::ValueDecl*> > >&, swift::DeclContext const*, bool, llvm::ArrayRef<std::pair<llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >, swift::namelookup::lookupVisibleDeclsInModule(swift::ModuleDecl*, llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::NLKind, swift::namelookup::ResolutionKind, swift::LazyResolver*, swift::DeclContext const*, llvm::ArrayRef<std::pair<llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >)::$_1) (/path/to/swift/bin/swift+0x15938aa)
25 0x00000000015930f3 swift::namelookup::lookupVisibleDeclsInModule(swift::ModuleDecl*, llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::NLKind, swift::namelookup::ResolutionKind, swift::LazyResolver*, swift::DeclContext const*, llvm::ArrayRef<std::pair<llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >) (/path/to/swift/bin/swift+0x15930f3)
26 0x00000000015819fd swift::lookupVisibleDecls(swift::VisibleDeclConsumer&, swift::DeclContext const*, swift::LazyResolver*, bool, swift::SourceLoc) (/path/to/swift/bin/swift+0x15819fd)
27 0x0000000001375c38 swift::TypeChecker::performTypoCorrection(swift::DeclContext*, swift::DeclRefKind, swift::Type, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>, swift::LookupResult&, unsigned int) (/path/to/swift/bin/swift+0x1375c38)
28 0x0000000001326be8 swift::TypeChecker::resolveDeclRefExpr(swift::UnresolvedDeclRefExpr*, swift::DeclContext*) (/path/to/swift/bin/swift+0x1326be8)
29 0x00000000013335a2 (anonymous namespace)::PreCheckExpression::walkToExprPre(swift::Expr*) (/path/to/swift/bin/swift+0x13335a2)
30 0x000000000150bdab swift::Expr::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0x150bdab)
31 0x00000000013276d5 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>) (/path/to/swift/bin/swift+0x13276d5)
32 0x000000000132b112 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132b112)
33 0x000000000132f264 swift::TypeChecker::typeCheckBinding(swift::Pattern*&, swift::Expr*&, swift::DeclContext*, bool) (/path/to/swift/bin/swift+0x132f264)
34 0x000000000132f4c6 swift::TypeChecker::typeCheckPatternBinding(swift::PatternBindingDecl*, unsigned int, bool) (/path/to/swift/bin/swift+0x132f4c6)
35 0x0000000001347af8 validatePatternBindingEntries(swift::TypeChecker&, swift::PatternBindingDecl*) (/path/to/swift/bin/swift+0x1347af8)
36 0x0000000001341ecd (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341ecd)
37 0x00000000013521cb (anonymous namespace)::DeclChecker::visitExtensionDecl(swift::ExtensionDecl*) (/path/to/swift/bin/swift+0x13521cb)
38 0x0000000001341eb4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341eb4)
39 0x0000000001341d83 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341d83)
40 0x00000000013ccaf5 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13ccaf5)
41 0x0000000000f93b16 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93b16)
42 0x00000000004ab3d9 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4ab3d9)
43 0x00000000004a996c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a996c)
44 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
45 0x00007f2369fcb830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
46 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-19 04:45:19 +02:00
practicalswift
6fef0260dc [swiftc (23 vs. 5563)] Add crasher in swift::TypeBase::getCanonicalType(...)
Add test case for crash triggered in `swift::TypeBase::getCanonicalType(...)`.

Current number of unresolved compiler crashers: 23 (5563 resolved)

Stack trace:

```
0 0x0000000003a5fdb8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5fdb8)
1 0x0000000003a604f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a604f6)
2 0x00007fad0da22390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00000000015b1974 swift::TypeBase::getCanonicalType() (/path/to/swift/bin/swift+0x15b1974)
4 0x0000000001334eb1 (anonymous namespace)::PreCheckExpression::simplifyTypeExpr(swift::Expr*) (/path/to/swift/bin/swift+0x1334eb1)
5 0x0000000001333bf7 (anonymous namespace)::PreCheckExpression::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x1333bf7)
6 0x000000000150bdfc swift::Expr::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0x150bdfc)
7 0x00000000013276d5 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>) (/path/to/swift/bin/swift+0x13276d5)
8 0x000000000132b112 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132b112)
9 0x000000000132f264 swift::TypeChecker::typeCheckBinding(swift::Pattern*&, swift::Expr*&, swift::DeclContext*, bool) (/path/to/swift/bin/swift+0x132f264)
10 0x000000000132f4c6 swift::TypeChecker::typeCheckPatternBinding(swift::PatternBindingDecl*, unsigned int, bool) (/path/to/swift/bin/swift+0x132f4c6)
11 0x0000000001347af8 validatePatternBindingEntries(swift::TypeChecker&, swift::PatternBindingDecl*) (/path/to/swift/bin/swift+0x1347af8)
12 0x0000000001343e88 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1343e88)
13 0x0000000001325bca swift::TypeChecker::resolveDeclRefExpr(swift::UnresolvedDeclRefExpr*, swift::DeclContext*) (/path/to/swift/bin/swift+0x1325bca)
14 0x00000000013335a2 (anonymous namespace)::PreCheckExpression::walkToExprPre(swift::Expr*) (/path/to/swift/bin/swift+0x13335a2)
15 0x000000000150bdab swift::Expr::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0x150bdab)
16 0x00000000013276d5 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>) (/path/to/swift/bin/swift+0x13276d5)
17 0x000000000132b112 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132b112)
18 0x00000000013aee75 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13aee75)
19 0x00000000013ae4cb swift::TypeChecker::typeCheckClosureBody(swift::ClosureExpr*) (/path/to/swift/bin/swift+0x13ae4cb)
20 0x00000000013d246c swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) (/path/to/swift/bin/swift+0x13d246c)
21 0x000000000132b20d swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132b20d)
22 0x00000000013aee75 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13aee75)
23 0x00000000013ae686 swift::TypeChecker::typeCheckTopLevelCodeDecl(swift::TopLevelCodeDecl*) (/path/to/swift/bin/swift+0x13ae686)
24 0x00000000013ccb70 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13ccb70)
25 0x0000000000f93b16 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93b16)
26 0x00000000004ab3d9 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4ab3d9)
27 0x00000000004a996c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a996c)
28 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
29 0x00007fad0bf33830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
30 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-19 03:38:14 +02:00
practicalswift
244098d61c [swiftc (22 vs. 5563)] Add crasher in swift::ProtocolDecl::requiresClassSlow(...)
Add test case for crash triggered in `swift::ProtocolDecl::requiresClassSlow(...)`.

Current number of unresolved compiler crashers: 22 (5563 resolved)

/cc @slavapestov - just wanted to let you know that this crasher caused an assertion failure for the assertion `type && "Should have type checked inheritance clause by now"` added on 2017-04-28 by you in commit 0d4a0b7d :-)

Assertion failure in [`lib/AST/Decl.cpp (line 2989)`](c9b59ed644/lib/AST/Decl.cpp (L2989)):

```
Assertion `type && "Should have type checked inheritance clause by now"' failed.

When executing: bool swift::ProtocolDecl::requiresClassSlow()
```

Assertion context:

```c++

  // Otherwise, check if the inheritance clause contains a
  // class-constrained existential.
  //
  // FIXME: Use the requirement signature if available.
  ProtocolDeclBits.RequiresClass = false;
  for (auto inherited : getInherited()) {
    auto type = inherited.getType();
    assert(type && "Should have type checked inheritance clause by now");
    if (type->isExistentialType()) {
      auto layout = type->getExistentialLayout();
```
Stack trace:

```
0 0x0000000003a5fdb8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5fdb8)
1 0x0000000003a604f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a604f6)
2 0x00007fa9bd99d390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007fa9bbec3428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007fa9bbec502a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007fa9bbebbbd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007fa9bbebbc82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x0000000001532956 swift::ProtocolDecl::requiresClassSlow() (/path/to/swift/bin/swift+0x1532956)
8 0x00000000014ddfb5 swift::ASTVisitor<(anonymous namespace)::PrintAST, void, void, void, void, void, void>::visit(swift::Decl*) (/path/to/swift/bin/swift+0x14ddfb5)
9 0x00000000014d4be7 (anonymous namespace)::PrintAST::visit(swift::Decl*) (/path/to/swift/bin/swift+0x14d4be7)
10 0x00000000014e0985 (anonymous namespace)::PrintAST::printMembersOfDecl(swift::Decl*, bool, bool, bool) (/path/to/swift/bin/swift+0x14e0985)
11 0x00000000014ded89 swift::ASTVisitor<(anonymous namespace)::PrintAST, void, void, void, void, void, void>::visit(swift::Decl*) (/path/to/swift/bin/swift+0x14ded89)
12 0x00000000014d4be7 (anonymous namespace)::PrintAST::visit(swift::Decl*) (/path/to/swift/bin/swift+0x14d4be7)
13 0x00000000014d493b swift::Decl::print(swift::ASTPrinter&, swift::PrintOptions const&) const (/path/to/swift/bin/swift+0x14d493b)
14 0x0000000001543402 swift::DiagnosticEngine::emitDiagnostic(swift::Diagnostic const&) (/path/to/swift/bin/swift+0x1543402)
15 0x0000000001540a8f swift::DiagnosticEngine::flushActiveDiagnostic() (/path/to/swift/bin/swift+0x1540a8f)
16 0x000000000139cac1 std::_Function_handler<void (swift::NormalProtocolConformance*), (anonymous namespace)::ConformanceChecker::resolveTypeWitnessViaLookup(swift::AssociatedTypeDecl*)::$_31>::_M_invoke(std::_Any_data const&, swift::NormalProtocolConformance*&&) (/path/to/swift/bin/swift+0x139cac1)
17 0x0000000001389c55 (anonymous namespace)::ConformanceChecker::diagnoseOrDefer(swift::ValueDecl*, bool, std::function<void (swift::NormalProtocolConformance*)>) (/path/to/swift/bin/swift+0x1389c55)
18 0x0000000001399428 (anonymous namespace)::ConformanceChecker::resolveTypeWitnessViaLookup(swift::AssociatedTypeDecl*) (/path/to/swift/bin/swift+0x1399428)
19 0x000000000138657a (anonymous namespace)::ConformanceChecker::resolveTypeWitnesses() (/path/to/swift/bin/swift+0x138657a)
20 0x00000000013819ee (anonymous namespace)::MultiConformanceChecker::checkAllConformances() (/path/to/swift/bin/swift+0x13819ee)
21 0x00000000013830f2 swift::TypeChecker::checkConformancesInContext(swift::DeclContext*, swift::IterableDeclContext*) (/path/to/swift/bin/swift+0x13830f2)
22 0x000000000135290e (anonymous namespace)::DeclChecker::visitClassDecl(swift::ClassDecl*) (/path/to/swift/bin/swift+0x135290e)
23 0x0000000001341f7e (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341f7e)
24 0x00000000013521cb (anonymous namespace)::DeclChecker::visitExtensionDecl(swift::ExtensionDecl*) (/path/to/swift/bin/swift+0x13521cb)
25 0x0000000001341eb4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341eb4)
26 0x0000000001341d83 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341d83)
27 0x00000000013aee16 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13aee16)
28 0x00000000013ae4cb swift::TypeChecker::typeCheckClosureBody(swift::ClosureExpr*) (/path/to/swift/bin/swift+0x13ae4cb)
29 0x00000000013d246c swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) (/path/to/swift/bin/swift+0x13d246c)
30 0x000000000132b20d swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132b20d)
31 0x00000000013aee75 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13aee75)
32 0x00000000013ae686 swift::TypeChecker::typeCheckTopLevelCodeDecl(swift::TopLevelCodeDecl*) (/path/to/swift/bin/swift+0x13ae686)
33 0x00000000013ccb70 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13ccb70)
34 0x0000000000f93b16 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93b16)
35 0x00000000004ab3d9 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4ab3d9)
36 0x00000000004a996c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a996c)
37 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
38 0x00007fa9bbeae830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
39 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-19 02:31:13 +02:00
practicalswift
aacc765244 [swiftc (21 vs. 5563)] Add crasher in swift::TypeBase::getCanonicalType(...)
Add test case for crash triggered in `swift::TypeBase::getCanonicalType(...)`.

Current number of unresolved compiler crashers: 21 (5563 resolved)

/cc @slavapestov - just wanted to let you know that this crasher caused an assertion failure for the assertion `gpDecl->getDepth() != GenericTypeParamDecl::InvalidDepth && "parameter hasn't been validated"` added on 2017-02-22 by you in commit fdb0a186 :-)

Assertion failure in [`lib/AST/Type.cpp (line 1093)`](ca3227f93c/lib/AST/Type.cpp (L1093)):

```
Assertion `gpDecl->getDepth() != GenericTypeParamDecl::InvalidDepth && "parameter hasn't been validated"' failed.

When executing: swift::CanType swift::TypeBase::getCanonicalType()
```

Assertion context:

```c++

  case TypeKind::GenericTypeParam: {
    GenericTypeParamType *gp = cast<GenericTypeParamType>(this);
    auto gpDecl = gp->getDecl();
    assert(gpDecl->getDepth() != GenericTypeParamDecl::InvalidDepth &&
           "parameter hasn't been validated");
    Result = GenericTypeParamType::get(gpDecl->getDepth(), gpDecl->getIndex(),
                                       gpDecl->getASTContext());
    break;
  }

```
Stack trace:

```
0 0x0000000003a5fdb8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5fdb8)
1 0x0000000003a604f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a604f6)
2 0x00007f06d3824390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f06d1d4a428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f06d1d4c02a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f06d1d42bd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007f06d1d42c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x00000000015b2461 swift::TypeBase::getCanonicalType() (/path/to/swift/bin/swift+0x15b2461)
8 0x00000000014945e5 swift::DependentMemberType::get(swift::Type, swift::AssociatedTypeDecl*) (/path/to/swift/bin/swift+0x14945e5)
9 0x0000000001563fea swift::GenericSignatureBuilder::addConformanceRequirement(swift::GenericSignatureBuilder::PotentialArchetype*, swift::ProtocolDecl*, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x1563fea)
10 0x0000000001567945 swift::GenericSignatureBuilder::addTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind) (/path/to/swift/bin/swift+0x1567945)
11 0x0000000001579321 swift::GenericSignatureBuilder::ConstraintResult llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>::callback_fn<swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*)::$_26>(long, swift::Type, swift::TypeRepr const*) (/path/to/swift/bin/swift+0x1579321)
12 0x0000000001571a92 std::_Function_handler<void (swift::Type, swift::TypeRepr const*), visitInherited(llvm::ArrayRef<swift::TypeLoc>, llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>)::$_60>::_M_invoke(std::_Any_data const&, swift::Type&&, swift::TypeRepr const*&&) (/path/to/swift/bin/swift+0x1571a92)
13 0x0000000001563a41 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x1563a41)
14 0x000000000156385e swift::GenericSignatureBuilder::addGenericParameterRequirements(swift::GenericTypeParamDecl*) (/path/to/swift/bin/swift+0x156385e)
15 0x000000000136eff2 swift::TypeChecker::checkGenericParamList(swift::GenericSignatureBuilder*, swift::GenericParamList*, swift::GenericSignature*, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x136eff2)
16 0x0000000001372945 visitOuterToInner(swift::GenericParamList*, llvm::function_ref<void (swift::GenericParamList*)>) (/path/to/swift/bin/swift+0x1372945)
17 0x00000000013725ad swift::TypeChecker::checkGenericEnvironment(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, bool, llvm::function_ref<void (swift::GenericSignatureBuilder&)>) (/path/to/swift/bin/swift+0x13725ad)
18 0x00000000013729f9 swift::TypeChecker::validateGenericTypeSignature(swift::GenericTypeDecl*) (/path/to/swift/bin/swift+0x13729f9)
19 0x0000000001343ccd swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1343ccd)
20 0x00000000013536b3 (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x13536b3)
21 0x0000000001341e84 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341e84)
22 0x00000000013521cb (anonymous namespace)::DeclChecker::visitExtensionDecl(swift::ExtensionDecl*) (/path/to/swift/bin/swift+0x13521cb)
23 0x0000000001341eb4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341eb4)
24 0x0000000001341d83 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341d83)
25 0x00000000013ccaf5 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13ccaf5)
26 0x0000000000f93b16 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93b16)
27 0x00000000004ab3d9 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4ab3d9)
28 0x00000000004a996c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a996c)
29 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
30 0x00007f06d1d35830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
31 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-19 01:08:58 +02:00
Slava Pestov
773d7b3225 Sema: Remove more methods from GenericTypeResolver
resolveGenericTypeParamType(), resolveTypeOfDecl() and
resolveTypeOfContext() would all take the type of a
declaration, and optionally map it into context.

Replace them with a mapTypeIntoContext() that takes a
type and either returns it verbatim or maps it into
context.
2017-06-15 21:31:35 -07:00
Slava Pestov
d1610a5536 Sema: Kill GenericTypeResolver::resolveSelfAssociatedType() 2017-06-15 18:37:16 -07:00
Doug Gregor
622e3a6342 Fixed a compiler crasher 2017-06-14 23:23:53 -07:00
Slava Pestov
c4df92aef3 Sema: Clean up 'dynamic' inference a bit 2017-06-07 17:55:42 -07:00
Slava Pestov
c152fee9f8 Sema: A couple of recursion-breaking hacks 2017-06-07 17:19:09 -07:00
Slava Pestov
00997138b5 Sema: Fix crash with associated type <=> typealias circularity 2017-06-06 23:56:34 -07:00
Slava Pestov
ec60c88412 Sema: Use requirement signature to check type witnesses 2017-06-06 23:56:33 -07:00
Slava Pestov
18082b1b3f Sema: Don't set "validation started" bit on typealiases in the ITC
This appears to do nothing except cause a crash.
2017-06-06 23:56:33 -07:00
Slava Pestov
c49a1d77d2 AST: Stricter DeclContext::getParentForLookup() 2017-06-06 23:56:32 -07:00
Slava Pestov
9e1f60d751 Sema: Skip an invalid kind of nested type in name lookup 2017-06-06 23:56:31 -07:00
Slava Pestov
55ffbe8cce AST: Fix Type::transform() for protocol compositions
There was undefined behavior here; we were calling
members.append(members.begin(), members.begin() + index),
which is invalid because 'members' is the new array of
members being built, which is empty at this point!
2017-06-06 23:27:54 -07:00
Slava Pestov
1bd91dee5c Sema: Fix crash with unbound generic types in patterns 2017-06-06 00:35:02 -07:00
Slava Pestov
e5becab4ac Sema: Fix crashes when applying solution with error types or unresolved types 2017-06-05 23:50:30 -07:00
Slava Pestov
433b7f276e Sema: Fix bug with name lookup from initializers 2017-06-05 23:11:53 -07:00
practicalswift
d32e2f6749 [swiftc (39 vs. 5544)] Add crasher in swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator(...)
Add test case for crash triggered in `swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator(...)`.

Current number of unresolved compiler crashers: 39 (5544 resolved)

Stack trace:

```
0 0x0000000003a5ed38 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5ed38)
1 0x0000000003a5f476 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f476)
2 0x00007fc68e117390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x000000000155199d swift::GenericEnvironment::QueryInterfaceTypeSubstitutions::operator()(swift::SubstitutableType*) const (/path/to/swift/bin/swift+0x155199d)
4 0x0000000001551b37 swift::GenericEnvironment::mapTypeIntoContext(swift::GenericTypeParamType*) const (/path/to/swift/bin/swift+0x1551b37)
5 0x00000000013bbe48 swift::TypeChecker::resolveTypeInContext(swift::TypeDecl*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x13bbe48)
6 0x00000000013c3b2e resolveTypeDecl(swift::TypeChecker&, swift::TypeDecl*, swift::SourceLoc, swift::DeclContext*, swift::GenericIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13c3b2e)
7 0x00000000013c371f resolveTopLevelIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, swift::ComponentIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13c371f)
8 0x00000000013bdbc3 resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bdbc3)
9 0x00000000013bd599 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bd599)
10 0x00000000013be308 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13be308)
11 0x00000000013be20c swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13be20c)
12 0x00000000013bcc60 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bcc60)
13 0x000000000133a76c swift::TypeChecker::checkInheritanceClause(swift::Decl*, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x133a76c)
14 0x00000000013431e6 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x13431e6)
15 0x0000000001374b1d swift::TypeChecker::lookupMemberType(swift::DeclContext*, swift::Type, swift::Identifier, swift::OptionSet<swift::NameLookupFlags, unsigned int>) (/path/to/swift/bin/swift+0x1374b1d)
16 0x00000000013bddeb resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bddeb)
17 0x00000000013bd599 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bd599)
18 0x00000000013be308 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13be308)
19 0x00000000013be20c swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13be20c)
20 0x00000000013bcc60 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bcc60)
21 0x0000000001478706 swift::IterativeTypeChecker::processResolveInheritedClauseEntry(std::pair<llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>, unsigned int>, llvm::function_ref<bool (swift::TypeCheckRequest)>) (/path/to/swift/bin/swift+0x1478706)
22 0x0000000001442566 swift::IterativeTypeChecker::satisfy(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1442566)
23 0x0000000001339949 swift::TypeChecker::resolveInheritanceClause(llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>) (/path/to/swift/bin/swift+0x1339949)
24 0x0000000001562a74 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x1562a74)
25 0x0000000001563144 swift::GenericSignatureBuilder::addConformanceRequirement(swift::GenericSignatureBuilder::PotentialArchetype*, swift::ProtocolDecl*, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x1563144)
26 0x0000000001566a75 swift::GenericSignatureBuilder::addTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind) (/path/to/swift/bin/swift+0x1566a75)
27 0x00000000015782c1 swift::GenericSignatureBuilder::ConstraintResult llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>::callback_fn<swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*)::$_26>(long, swift::Type, swift::TypeRepr const*) (/path/to/swift/bin/swift+0x15782c1)
28 0x0000000001570a32 std::_Function_handler<void (swift::Type, swift::TypeRepr const*), visitInherited(llvm::ArrayRef<swift::TypeLoc>, llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>)::$_57>::_M_invoke(std::_Any_data const&, swift::Type&&, swift::TypeRepr const*&&) (/path/to/swift/bin/swift+0x1570a32)
29 0x0000000001562b71 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x1562b71)
30 0x000000000156298e swift::GenericSignatureBuilder::addGenericParameterRequirements(swift::GenericTypeParamDecl*) (/path/to/swift/bin/swift+0x156298e)
31 0x000000000136e712 swift::TypeChecker::checkGenericParamList(swift::GenericSignatureBuilder*, swift::GenericParamList*, swift::GenericSignature*, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x136e712)
32 0x0000000001371cf4 swift::TypeChecker::checkGenericEnvironment(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, bool, llvm::function_ref<void (swift::GenericSignatureBuilder&)>) (/path/to/swift/bin/swift+0x1371cf4)
33 0x0000000001372119 swift::TypeChecker::validateGenericTypeSignature(swift::GenericTypeDecl*) (/path/to/swift/bin/swift+0x1372119)
34 0x0000000001343372 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1343372)
35 0x0000000001352f63 (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x1352f63)
36 0x0000000001341544 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341544)
37 0x0000000001341443 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341443)
38 0x00000000013cbb95 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cbb95)
39 0x0000000000f93236 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93236)
40 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
41 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
42 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
43 0x00007fc68c628830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
44 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-06 05:59:25 +02:00
practicalswift
745cfc6cfc [swiftc (38 vs. 5544)] Add crasher in swift::constraints::ConstraintSystem::addConstraint
Add test case for crash triggered in `swift::constraints::ConstraintSystem::addConstraint`.

Current number of unresolved compiler crashers: 38 (5544 resolved)

Stack trace:

```
0 0x0000000003a5ed38 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5ed38)
1 0x0000000003a5f476 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f476)
2 0x00007fafc563e390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007fafc3b64428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007fafc3b6602a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00000000039fb3dd llvm::llvm_unreachable_internal(char const*, char const*, unsigned int) (/path/to/swift/bin/swift+0x39fb3dd)
6 0x00000000012dc21e swift::constraints::ConstraintSystem::addConstraint(swift::constraints::ConstraintKind, swift::Type, swift::Type, swift::constraints::ConstraintLocatorBuilder, bool) (/path/to/swift/bin/swift+0x12dc21e)
7 0x00000000012d3c49 (anonymous namespace)::ConstraintGenerator::visitApplyExpr(swift::ApplyExpr*) (/path/to/swift/bin/swift+0x12d3c49)
8 0x00000000012cded8 (anonymous namespace)::ConstraintWalker::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x12cded8)
9 0x000000000150aecc swift::Expr::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0x150aecc)
10 0x00000000012c4a71 swift::constraints::ConstraintSystem::generateConstraints(swift::Expr*) (/path/to/swift/bin/swift+0x12c4a71)
11 0x00000000012ee3f6 swift::constraints::ConstraintSystem::solve(swift::Expr*&, swift::Type, swift::ExprTypeCheckListener*, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::FreeTypeVariableBinding) (/path/to/swift/bin/swift+0x12ee3f6)
12 0x0000000001326e54 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>) (/path/to/swift/bin/swift+0x1326e54)
13 0x000000000132a7d2 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132a7d2)
14 0x000000000132e924 swift::TypeChecker::typeCheckBinding(swift::Pattern*&, swift::Expr*&, swift::DeclContext*, bool) (/path/to/swift/bin/swift+0x132e924)
15 0x000000000132eb86 swift::TypeChecker::typeCheckPatternBinding(swift::PatternBindingDecl*, unsigned int, bool) (/path/to/swift/bin/swift+0x132eb86)
16 0x0000000001347268 validatePatternBindingEntries(swift::TypeChecker&, swift::PatternBindingDecl*) (/path/to/swift/bin/swift+0x1347268)
17 0x000000000134158d (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x134158d)
18 0x00000000013521db (anonymous namespace)::DeclChecker::visitClassDecl(swift::ClassDecl*) (/path/to/swift/bin/swift+0x13521db)
19 0x000000000134163e (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x134163e)
20 0x000000000135327b (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x135327b)
21 0x0000000001341544 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341544)
22 0x0000000001341443 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341443)
23 0x00000000013cbb95 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cbb95)
24 0x0000000000f93236 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93236)
25 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
26 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
27 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
28 0x00007fafc3b4f830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
29 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-06 04:25:54 +02:00
practicalswift
6a3d57378b [swiftc (37 vs. 5544)] Add crasher in swift::TypeChecker::checkDeclAttributesEarly(...)
Add test case for crash triggered in `swift::TypeChecker::checkDeclAttributesEarly(...)`.

Current number of unresolved compiler crashers: 37 (5544 resolved)

/cc @DougGregor - just wanted to let you know that this crasher caused an assertion failure for the assertion `loc.isValid() && "Diagnosing attribute with invalid location"` added on 2017-04-22 by you in commit 25ce6fa2 :-)

Assertion failure in [`lib/Sema/TypeCheckAttr.cpp (line 39)`](df10b0fe02/lib/Sema/TypeCheckAttr.cpp (L39)):

```
Assertion `loc.isValid() && "Diagnosing attribute with invalid location"' failed.

When executing: void (anonymous namespace)::diagnoseAndRemoveAttr(swift::TypeChecker &, swift::Decl *, swift::DeclAttribute *, ArgTypes &&...) [ArgTypes = <swift::Diag<> &>]
```

Assertion context:

```c++
  void diagnoseAndRemoveAttr(TypeChecker &TC, Decl *D, DeclAttribute *attr,
                             ArgTypes &&...Args) {
    assert(!D->hasClangNode() && "Clang imported propagated a bogus attribute");
    if (!D->hasClangNode()) {
      SourceLoc loc = attr->getLocation();
      assert(loc.isValid() && "Diagnosing attribute with invalid location");
      if (loc.isInvalid()) {
        loc = D->getLoc();
      }
      if (loc.isValid()) {
        TC.diagnose(loc, std::forward<ArgTypes>(Args)...)
```
Stack trace:

```
0 0x0000000003a5f2b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5f2b8)
1 0x0000000003a5f9f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f9f6)
2 0x00007f46fccd0390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f46fb1f6428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f46fb1f802a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f46fb1eebd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007f46fb1eec82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x00000000014612fd (/path/to/swift/bin/swift+0x14612fd)
8 0x000000000145bc70 swift::TypeChecker::checkDeclAttributesEarly(swift::Decl*) (/path/to/swift/bin/swift+0x145bc70)
9 0x0000000001354bbc (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl*) (/path/to/swift/bin/swift+0x1354bbc)
10 0x0000000001341454 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341454)
11 0x000000000134346d swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x134346d)
12 0x000000000134809d validateAbstractStorageDecl(swift::AbstractStorageDecl*, swift::TypeChecker&) (/path/to/swift/bin/swift+0x134809d)
13 0x00000000013441b1 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x13441b1)
14 0x0000000001358ae3 std::_Function_handler<void (swift::VarDecl*), (anonymous namespace)::DeclChecker::visitBoundVars(swift::Pattern*)::{lambda(swift::VarDecl*)#1}>::_M_invoke(std::_Any_data const&, swift::VarDecl*&&) (/path/to/swift/bin/swift+0x1358ae3)
15 0x000000000159ff1f swift::Pattern::forEachVariable(std::function<void (swift::VarDecl*)> const&) const (/path/to/swift/bin/swift+0x159ff1f)
16 0x00000000013415f2 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x13415f2)
17 0x00000000013520cb (anonymous namespace)::DeclChecker::visitClassDecl(swift::ClassDecl*) (/path/to/swift/bin/swift+0x13520cb)
18 0x000000000134152e (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x134152e)
19 0x0000000001341333 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341333)
20 0x00000000013cba85 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cba85)
21 0x0000000000f93106 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93106)
22 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
23 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
24 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
25 0x00007f46fb1e1830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
26 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-06 02:38:35 +02:00
practicalswift
5ae6f648c9 [swiftc (36 vs. 5544)] Add crasher in swift::GenericSignatureBuilder::addSameTypeRequirementDirect
Add test case for crash triggered in `swift::GenericSignatureBuilder::addSameTypeRequirementDirect`.

Current number of unresolved compiler crashers: 36 (5544 resolved)

Stack trace:

```
0 0x0000000003a5f2b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5f2b8)
1 0x0000000003a5f9f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f9f6)
2 0x00007f58a3639390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f58a1b5f428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f58a1b6102a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00000000039fb95d llvm::llvm_unreachable_internal(char const*, char const*, unsigned int) (/path/to/swift/bin/swift+0x39fb95d)
6 0x00000000015778b4 bool swift::CanTypeVisitor<swift::TypeMatcher<swift::GenericSignatureBuilder::addSameTypeRequirementBetweenConcrete(swift::Type, swift::Type, swift::GenericSignatureBuilder::FloatingRequirementSource, llvm::function_ref<void (swift::Type, swift::Type)>)::ReqTypeMatcher>::MatchVisitor, bool, swift::Type, swift::Type>::visit<>(swift::CanType, swift::Type, swift::Type) (/path/to/swift/bin/swift+0x15778b4)
7 0x0000000001569002 swift::GenericSignatureBuilder::addSameTypeRequirementDirect(swift::GenericSignatureBuilder::ResolvedType, swift::GenericSignatureBuilder::ResolvedType, swift::GenericSignatureBuilder::FloatingRequirementSource, llvm::function_ref<void (swift::Type, swift::Type)>) (/path/to/swift/bin/swift+0x1569002)
8 0x000000000156834c swift::GenericSignatureBuilder::addSameTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind, llvm::function_ref<void (swift::Type, swift::Type)>) (/path/to/swift/bin/swift+0x156834c)
9 0x0000000001568767 swift::GenericSignatureBuilder::addSameTypeRequirementToConcrete(swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x1568767)
10 0x000000000156834c swift::GenericSignatureBuilder::addSameTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind, llvm::function_ref<void (swift::Type, swift::Type)>) (/path/to/swift/bin/swift+0x156834c)
11 0x000000000155f5ce swift::GenericSignatureBuilder::PotentialArchetype::updateNestedTypeForConformance(llvm::PointerUnion<swift::AssociatedTypeDecl*, swift::TypeDecl*>, swift::GenericSignatureBuilder::PotentialArchetype::NestedTypeUpdate) (/path/to/swift/bin/swift+0x155f5ce)
12 0x000000000155e112 swift::GenericSignatureBuilder::PotentialArchetype::getNestedArchetypeAnchor(swift::Identifier, swift::GenericSignatureBuilder&, swift::GenericSignatureBuilder::PotentialArchetype::NestedTypeUpdate) (/path/to/swift/bin/swift+0x155e112)
13 0x000000000156c59c swift::GenericSignatureBuilder::checkSameTypeConstraints(llvm::ArrayRef<swift::GenericTypeParamType*>, swift::GenericSignatureBuilder::PotentialArchetype*) (/path/to/swift/bin/swift+0x156c59c)
14 0x0000000001569840 swift::GenericSignatureBuilder::finalize(swift::SourceLoc, llvm::ArrayRef<swift::GenericTypeParamType*>, bool) (/path/to/swift/bin/swift+0x1569840)
15 0x0000000001371c20 swift::TypeChecker::checkGenericEnvironment(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, bool, llvm::function_ref<void (swift::GenericSignatureBuilder&)>) (/path/to/swift/bin/swift+0x1371c20)
16 0x0000000001372009 swift::TypeChecker::validateGenericTypeSignature(swift::GenericTypeDecl*) (/path/to/swift/bin/swift+0x1372009)
17 0x0000000001343262 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1343262)
18 0x0000000001352e53 (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x1352e53)
19 0x0000000001341434 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341434)
20 0x0000000001341333 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341333)
21 0x00000000013cba85 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cba85)
22 0x0000000000f93106 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93106)
23 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
24 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
25 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
26 0x00007f58a1b4a830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
27 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-06 01:03:44 +02:00
practicalswift
067249ac3f [swiftc (35 vs. 5544)] Add crasher in swift::TypeChecker::resolveTypeInContext
Add test case for crash triggered in `swift::TypeChecker::resolveTypeInContext`.

Current number of unresolved compiler crashers: 35 (5544 resolved)

/cc @huonw - just wanted to let you know that this crasher caused an assertion failure for the assertion `selfTy->isEqual(Proto->getSelfInterfaceType())` added on 2017-02-24 by you in commit 76525439 :-)

Assertion failure in [`lib/Sema/TypeCheckGeneric.cpp (line 134)`](69aca7a4c1/lib/Sema/TypeCheckGeneric.cpp (L134)):

```
Assertion `selfTy->isEqual(Proto->getSelfInterfaceType())' failed.

When executing: virtual swift::Type swift::ProtocolRequirementTypeResolver::resolveSelfAssociatedType(swift::Type, swift::AssociatedTypeDecl *)
```

Assertion context:

```c++
  return DependentMemberType::get(baseTy, ref->getIdentifier());
}

Type ProtocolRequirementTypeResolver::resolveSelfAssociatedType(
    Type selfTy, AssociatedTypeDecl *assocType) {
  assert(selfTy->isEqual(Proto->getSelfInterfaceType()));
  (void)Proto;
  return assocType->getDeclaredInterfaceType();
}

Type ProtocolRequirementTypeResolver::resolveTypeOfContext(DeclContext *dc) {
```
Stack trace:

```
0 0x0000000003a5f2b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5f2b8)
1 0x0000000003a5f9f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f9f6)
2 0x00007f39e48d7390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f39e2dfd428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f39e2dff02a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f39e2df5bd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007f39e2df5c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x000000000136dd14 (/path/to/swift/bin/swift+0x136dd14)
8 0x00000000013bbe44 swift::TypeChecker::resolveTypeInContext(swift::TypeDecl*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x13bbe44)
9 0x00000000013c3a1e resolveTypeDecl(swift::TypeChecker&, swift::TypeDecl*, swift::SourceLoc, swift::DeclContext*, swift::GenericIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13c3a1e)
10 0x00000000013c360f resolveTopLevelIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, swift::ComponentIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13c360f)
11 0x00000000013bdab3 resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bdab3)
12 0x00000000013bd88f resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bd88f)
13 0x00000000013bd489 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bd489)
14 0x00000000013be1f8 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13be1f8)
15 0x00000000013be0fc swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13be0fc)
16 0x00000000013bcb50 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bcb50)
17 0x00000000014785e6 swift::IterativeTypeChecker::processResolveInheritedClauseEntry(std::pair<llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>, unsigned int>, llvm::function_ref<bool (swift::TypeCheckRequest)>) (/path/to/swift/bin/swift+0x14785e6)
18 0x0000000001442446 swift::IterativeTypeChecker::satisfy(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1442446)
19 0x0000000001339839 swift::TypeChecker::resolveInheritanceClause(llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>) (/path/to/swift/bin/swift+0x1339839)
20 0x0000000001563044 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x1563044)
21 0x0000000001563714 swift::GenericSignatureBuilder::addConformanceRequirement(swift::GenericSignatureBuilder::PotentialArchetype*, swift::ProtocolDecl*, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x1563714)
22 0x0000000001567045 swift::GenericSignatureBuilder::addTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind) (/path/to/swift/bin/swift+0x1567045)
23 0x0000000001578891 swift::GenericSignatureBuilder::ConstraintResult llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>::callback_fn<swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*)::$_26>(long, swift::Type, swift::TypeRepr const*) (/path/to/swift/bin/swift+0x1578891)
24 0x0000000001571002 std::_Function_handler<void (swift::Type, swift::TypeRepr const*), visitInherited(llvm::ArrayRef<swift::TypeLoc>, llvm::function_ref<swift::GenericSignatureBuilder::ConstraintResult (swift::Type, swift::TypeRepr const*)>)::$_57>::_M_invoke(std::_Any_data const&, swift::Type&&, swift::TypeRepr const*&&) (/path/to/swift/bin/swift+0x1571002)
25 0x0000000001563141 swift::GenericSignatureBuilder::addInheritedRequirements(swift::TypeDecl*, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::RequirementSource const*, swift::ModuleDecl*) (/path/to/swift/bin/swift+0x1563141)
26 0x0000000001562f5e swift::GenericSignatureBuilder::addGenericParameterRequirements(swift::GenericTypeParamDecl*) (/path/to/swift/bin/swift+0x1562f5e)
27 0x000000000136e602 swift::TypeChecker::checkGenericParamList(swift::GenericSignatureBuilder*, swift::GenericParamList*, swift::GenericSignature*, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x136e602)
28 0x0000000001371be4 swift::TypeChecker::checkGenericEnvironment(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, bool, llvm::function_ref<void (swift::GenericSignatureBuilder&)>) (/path/to/swift/bin/swift+0x1371be4)
29 0x0000000001372009 swift::TypeChecker::validateGenericTypeSignature(swift::GenericTypeDecl*) (/path/to/swift/bin/swift+0x1372009)
30 0x0000000001343262 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1343262)
31 0x0000000001352e53 (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x1352e53)
32 0x0000000001341434 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341434)
33 0x000000000135316b (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x135316b)
34 0x0000000001341434 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341434)
35 0x0000000001341333 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341333)
36 0x00000000013cba85 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cba85)
37 0x0000000000f93106 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93106)
38 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
39 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
40 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
41 0x00007f39e2de8830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
42 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-05 23:31:40 +02:00
practicalswift
3806292ae2 [swiftc (34 vs. 5544)] Add crasher in swift::TypeChecker::resolveWitness
Add test case for crash triggered in `swift::TypeChecker::resolveWitness`.

Current number of unresolved compiler crashers: 34 (5544 resolved)

/cc @DougGregor - just wanted to let you know that this crasher caused an assertion failure for the assertion `Conformance->getTypeWitness(assocType, nullptr) ->isEqual(type) && "Conflicting type witness deductions"` added on 2017-04-04 by you in commit 5c89eb84 :-)

Assertion failure in [`lib/Sema/TypeCheckProtocol.cpp (line 2497)`](a5b5609137/lib/Sema/TypeCheckProtocol.cpp (L2497)):

```
Assertion `Conformance->getTypeWitness(assocType, nullptr) ->isEqual(type) && "Conflicting type witness deductions"' failed.

When executing: void (anonymous namespace)::ConformanceChecker::recordTypeWitness(swift::AssociatedTypeDecl *, swift::Type, swift::TypeDecl *, bool)
```

Assertion context:

```c++
                                           bool performRedeclarationCheck) {

  // If we already recoded this type witness, there's nothing to do.
  if (Conformance->hasTypeWitness(assocType)) {
    assert(Conformance->getTypeWitness(assocType, nullptr)
             ->isEqual(type) && "Conflicting type witness deductions");
    return;
  }

  if (typeDecl) {
    // Check access.
```
Stack trace:

```
0 0x0000000003a5f2b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5f2b8)
1 0x0000000003a5f9f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f9f6)
2 0x00007fc4aecc3390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007fc4ad1e9428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007fc4ad1eb02a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007fc4ad1e1bd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007fc4ad1e1c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x000000000139b0ef (anonymous namespace)::ConformanceChecker::recordTypeWitness(swift::AssociatedTypeDecl*, swift::Type, swift::TypeDecl*, bool) (/path/to/swift/bin/swift+0x139b0ef)
8 0x0000000001398507 (anonymous namespace)::ConformanceChecker::resolveTypeWitnessViaLookup(swift::AssociatedTypeDecl*) (/path/to/swift/bin/swift+0x1398507)
9 0x000000000138578a (anonymous namespace)::ConformanceChecker::resolveTypeWitnesses() (/path/to/swift/bin/swift+0x138578a)
10 0x000000000138737c swift::TypeChecker::resolveWitness(swift::NormalProtocolConformance const*, swift::ValueDecl*) (/path/to/swift/bin/swift+0x138737c)
11 0x00000000015a53fd swift::NormalProtocolConformance::getWitness(swift::ValueDecl*, swift::LazyResolver*) const (/path/to/swift/bin/swift+0x15a53fd)
12 0x00000000015a52cf swift::ProtocolConformance::getWitnessDecl(swift::ValueDecl*, swift::LazyResolver*) const (/path/to/swift/bin/swift+0x15a52cf)
13 0x0000000001373e3b (anonymous namespace)::LookupResultBuilder::add(swift::ValueDecl*, swift::ValueDecl*, swift::Type) (/path/to/swift/bin/swift+0x1373e3b)
14 0x0000000001374699 swift::TypeChecker::lookupMember(swift::DeclContext*, swift::Type, swift::DeclName, swift::OptionSet<swift::NameLookupFlags, unsigned int>)::$_1::operator()() const (/path/to/swift/bin/swift+0x1374699)
15 0x0000000001374517 swift::TypeChecker::lookupMember(swift::DeclContext*, swift::Type, swift::DeclName, swift::OptionSet<swift::NameLookupFlags, unsigned int>) (/path/to/swift/bin/swift+0x1374517)
16 0x00000000013c4184 diagnoseUnknownType(swift::TypeChecker&, swift::DeclContext*, swift::Type, swift::SourceRange, swift::ComponentIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::OptionSet<swift::NameLookupFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13c4184)
17 0x00000000013bde15 resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bde15)
18 0x00000000013bd489 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bd489)
19 0x00000000013be1f8 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13be1f8)
20 0x00000000013be0fc swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13be0fc)
21 0x00000000013bcb50 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bcb50)
22 0x00000000013431f9 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x13431f9)
23 0x0000000001351a1f (anonymous namespace)::DeclChecker::visitTypeAliasDecl(swift::TypeAliasDecl*) (/path/to/swift/bin/swift+0x1351a1f)
24 0x0000000001341404 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341404)
25 0x0000000001351f5b (anonymous namespace)::DeclChecker::visitStructDecl(swift::StructDecl*) (/path/to/swift/bin/swift+0x1351f5b)
26 0x0000000001341414 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341414)
27 0x0000000001341333 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341333)
28 0x00000000013cba85 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cba85)
29 0x0000000000f93106 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93106)
30 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
31 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
32 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
33 0x00007fc4ad1d4830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
34 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-05 18:50:12 +02:00
practicalswift
418f6df258 [swiftc (33 vs. 5544)] Add crasher in swift::TypeBase::getCanonicalType(...)
Add test case for crash triggered in `swift::TypeBase::getCanonicalType(...)`.

Current number of unresolved compiler crashers: 33 (5544 resolved)

Assertion failure in [`include/swift/AST/Type.h (line 389)`](2b0ddcd1d7/include/swift/AST/Type.h (L389)):

```
Assertion `isActuallyCanonicalOrNull() && "Forming a CanType out of a non-canonical type!"' failed.

When executing: swift::CanType::CanType(swift::TypeBase *)
```

Assertion context:

```c++
  static CanType getLValueOrInOutObjectTypeImpl(CanType type);

public:
  explicit CanType(TypeBase *P = 0) : Type(P) {
    assert(isActuallyCanonicalOrNull() &&
           "Forming a CanType out of a non-canonical type!");
  }
  explicit CanType(Type T) : Type(T) {
    assert(isActuallyCanonicalOrNull() &&
           "Forming a CanType out of a non-canonical type!");
  }
```
Stack trace:

```
0 0x0000000003a5f2b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5f2b8)
1 0x0000000003a5f9f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f9f6)
2 0x00007f122f60b390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f122db31428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f122db3302a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f122db29bd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007f122db29c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x00000000015b182c swift::TypeBase::getCanonicalType() (/path/to/swift/bin/swift+0x15b182c)
8 0x00000000015b139b swift::TypeBase::getCanonicalType() (/path/to/swift/bin/swift+0x15b139b)
9 0x00000000012c7e5b swift::ASTVisitor<(anonymous namespace)::ConstraintGenerator, swift::Type, void, void, void, void, void>::visit(swift::Expr*) (/path/to/swift/bin/swift+0x12c7e5b)
10 0x00000000012cddc8 (anonymous namespace)::ConstraintWalker::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x12cddc8)
11 0x000000000150b49c swift::Expr::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0x150b49c)
12 0x00000000012c4961 swift::constraints::ConstraintSystem::generateConstraints(swift::Expr*) (/path/to/swift/bin/swift+0x12c4961)
13 0x00000000012ee2e6 swift::constraints::ConstraintSystem::solve(swift::Expr*&, swift::Type, swift::ExprTypeCheckListener*, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::FreeTypeVariableBinding) (/path/to/swift/bin/swift+0x12ee2e6)
14 0x0000000001326d44 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>) (/path/to/swift/bin/swift+0x1326d44)
15 0x000000000132a6c2 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132a6c2)
16 0x00000000013adeb5 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13adeb5)
17 0x00000000013ad6c6 swift::TypeChecker::typeCheckTopLevelCodeDecl(swift::TopLevelCodeDecl*) (/path/to/swift/bin/swift+0x13ad6c6)
18 0x00000000013cbb00 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cbb00)
19 0x0000000000f93106 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93106)
20 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
21 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
22 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
23 0x00007f122db1c830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
24 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-05 16:41:53 +02:00
practicalswift
c3fcfd2c26 [swiftc (32 vs. 5544)] Add crasher in swift::Expr::walk(...)
Add test case for crash triggered in `swift::Expr::walk(...)`.

Current number of unresolved compiler crashers: 32 (5544 resolved)

/cc @DougGregor - just wanted to let you know that this crasher caused an assertion failure for the assertion `ty->getNominalOrBoundGenericNominal() || ty->is<DynamicSelfType>() || ty->isExistentialType() || ty->is<ArchetypeType>()` added on 2014-02-25 by you in commit 6a532e05c :-)

Assertion failure in [`lib/Sema/CSApply.cpp (line 7121)`](5c1859e98a/lib/Sema/CSApply.cpp (L7121)):

```
Assertion `ty->getNominalOrBoundGenericNominal() || ty->is<DynamicSelfType>() || ty->isExistentialType() || ty->is<ArchetypeType>()' failed.

When executing: swift::Expr *(anonymous namespace)::ExprRewriter::finishApply(swift::ApplyExpr *, swift::Type, swift::constraints::ConstraintLocatorBuilder)
```

Assertion context:

```c++
  }

  // We're constructing a value of nominal type. Look for the constructor or
  // enum element to use.
  assert(ty->getNominalOrBoundGenericNominal() || ty->is<DynamicSelfType>() ||
         ty->isExistentialType() || ty->is<ArchetypeType>());
  auto ctorLocator = cs.getConstraintLocator(
                 locator.withPathElement(ConstraintLocator::ApplyFunction)
                        .withPathElement(ConstraintLocator::ConstructorMember));
  auto selected = getOverloadChoiceIfAvailable(ctorLocator);

```
Stack trace:

```
0 0x0000000003a5f2b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5f2b8)
1 0x0000000003a5f9f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f9f6)
2 0x00007f45d9d9b390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007f45d82c1428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007f45d82c302a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007f45d82b9bd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007f45d82b9c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x00000000013d899e (/path/to/swift/bin/swift+0x13d899e)
8 0x00000000013eeb93 (anonymous namespace)::ExprRewriter::visitApplyExpr(swift::ApplyExpr*) (/path/to/swift/bin/swift+0x13eeb93)
9 0x00000000013d4294 (anonymous namespace)::ExprRewriter::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x13d4294)
10 0x00000000013d9a61 (anonymous namespace)::ExprWalker::walkToExprPost(swift::Expr*) (/path/to/swift/bin/swift+0x13d9a61)
11 0x000000000150b49c swift::Expr::walk(swift::ASTWalker&) (/path/to/swift/bin/swift+0x150b49c)
12 0x00000000013d125f swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) (/path/to/swift/bin/swift+0x13d125f)
13 0x000000000132a7bd swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132a7bd)
14 0x00000000014002fc (anonymous namespace)::FailureDiagnosis::typeCheckChildIndependently(swift::Expr*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<TCCFlags, unsigned int>, swift::ExprTypeCheckListener*, bool) (/path/to/swift/bin/swift+0x14002fc)
15 0x00000000013fd957 swift::ASTVisitor<(anonymous namespace)::FailureDiagnosis, bool, void, void, void, void, void>::visit(swift::Expr*) (/path/to/swift/bin/swift+0x13fd957)
16 0x00000000013f448b swift::constraints::ConstraintSystem::diagnoseFailureForExpr(swift::Expr*) (/path/to/swift/bin/swift+0x13f448b)
17 0x00000000013fa2c9 swift::constraints::ConstraintSystem::salvage(llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::Expr*) (/path/to/swift/bin/swift+0x13fa2c9)
18 0x0000000001326d88 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>) (/path/to/swift/bin/swift+0x1326d88)
19 0x000000000132a6c2 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132a6c2)
20 0x000000000132e814 swift::TypeChecker::typeCheckBinding(swift::Pattern*&, swift::Expr*&, swift::DeclContext*, bool) (/path/to/swift/bin/swift+0x132e814)
21 0x000000000132ea76 swift::TypeChecker::typeCheckPatternBinding(swift::PatternBindingDecl*, unsigned int, bool) (/path/to/swift/bin/swift+0x132ea76)
22 0x0000000001347158 validatePatternBindingEntries(swift::TypeChecker&, swift::PatternBindingDecl*) (/path/to/swift/bin/swift+0x1347158)
23 0x0000000001343428 swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x1343428)
24 0x000000000143201a swift::createImplicitConstructor(swift::TypeChecker&, swift::NominalTypeDecl*, swift::ImplicitConstructorKind) (/path/to/swift/bin/swift+0x143201a)
25 0x000000000134887c swift::TypeChecker::addImplicitConstructors(swift::NominalTypeDecl*) (/path/to/swift/bin/swift+0x134887c)
26 0x0000000001351f0e (anonymous namespace)::DeclChecker::visitStructDecl(swift::StructDecl*) (/path/to/swift/bin/swift+0x1351f0e)
27 0x0000000001341414 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341414)
28 0x000000000135316b (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x135316b)
29 0x0000000001341434 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341434)
30 0x0000000001341333 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341333)
31 0x00000000013cba85 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cba85)
32 0x0000000000f93106 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93106)
33 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
34 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
35 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
36 0x00007f45d82ac830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
37 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-05 14:56:51 +02:00
practicalswift
06249a68d6 [swiftc (31 vs. 5544)] Add crasher in swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(...)
Add test case for crash triggered in `swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(...)`.

Current number of unresolved compiler crashers: 31 (5544 resolved)

Stack trace:

```
0 0x0000000003a5f2b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5f2b8)
1 0x0000000003a5f9f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f9f6)
2 0x00007fbcdc7c4390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00000000014792e9 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14792e9)
4 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
5 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
6 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
7 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
8 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
9 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
10 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
11 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
12 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
13 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
14 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
15 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
16 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
17 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
18 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
19 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
20 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
21 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
22 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
23 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
24 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
25 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
26 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
27 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
28 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
29 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
30 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
31 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
32 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
33 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
34 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
35 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
36 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
37 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
38 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
39 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
40 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
41 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
42 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
43 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
44 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
45 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
46 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
47 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
48 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
49 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
50 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
51 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
52 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
53 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
54 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
55 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
56 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
57 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
58 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
59 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
60 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
61 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
62 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
63 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
64 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
65 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
66 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
67 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
68 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
69 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
70 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
71 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
72 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
73 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
74 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
75 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
76 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
77 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
78 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
79 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
80 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
81 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
82 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
83 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
84 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
85 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
86 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
87 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
88 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
89 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
90 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
91 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
92 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
93 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
94 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
95 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
96 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
97 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
98 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
99 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
100 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
101 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
102 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
103 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
104 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
105 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
106 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
107 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
108 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
109 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
110 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
111 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
112 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
113 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
114 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
115 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
116 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
117 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
118 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
119 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
120 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
121 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
122 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
123 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
124 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
125 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
126 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
127 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
128 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
129 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
130 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
131 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
132 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
133 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
134 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
135 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
136 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
137 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
138 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
139 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
140 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
141 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
142 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
143 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
144 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
145 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
146 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
147 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
148 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
149 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
150 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
151 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
152 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
153 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
154 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
155 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
156 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
157 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
158 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
159 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
160 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
161 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
162 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
163 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
164 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
165 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
166 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
167 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
168 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
169 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
170 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
171 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
172 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
173 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
174 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
175 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
176 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
177 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
178 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
179 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
180 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
181 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
182 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
183 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
184 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
185 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
186 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
187 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
188 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
189 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
190 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
191 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
192 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
193 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
194 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
195 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
196 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
197 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
198 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
199 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
200 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
201 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
202 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
203 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
204 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
205 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
206 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
207 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
208 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
209 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
210 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
211 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
212 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
213 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
214 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
215 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
216 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
217 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
218 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
219 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
220 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
221 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
222 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
223 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
224 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
225 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
226 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
227 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
228 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
229 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
230 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
231 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
232 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
233 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
234 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
235 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
236 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
237 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
238 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
239 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
240 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
241 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
242 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
243 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
244 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
245 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
246 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
247 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
248 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
249 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
250 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
251 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
252 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
253 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
254 0x0000000001441d9e swift::IterativeTypeChecker::isSatisfied(swift::TypeCheckRequest) (/path/to/swift/bin/swift+0x1441d9e)
255 0x00000000014793d6 swift::IterativeTypeChecker::isQualifiedLookupInDeclContextSatisfied(swift::DeclContextLookupInfo) (/path/to/swift/bin/swift+0x14793d6)
```
2017-06-05 13:47:56 +02:00
practicalswift
7ef9041111 [swiftc (30 vs. 5544)] Add crasher in swift::GenericSignature::getConformanceAccessPath
Add test case for crash triggered in `swift::GenericSignature::getConformanceAccessPath`.

Current number of unresolved compiler crashers: 30 (5544 resolved)

/cc @DougGregor - just wanted to let you know that this crasher caused an assertion failure for the assertion `inProtocol->isRequirementSignatureComputed() && "missing signature"` added on 2017-03-08 by you in commit 1f8b0f9b :-)

Assertion failure in [`lib/AST/GenericSignature.cpp (line 857)`](aae1b681e7/lib/AST/GenericSignature.cpp (L857)):

```
Assertion `inProtocol->isRequirementSignatureComputed() && "missing signature"' failed.

When executing: auto swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl *, swift::ModuleDecl &)::(anonymous class)::operator()(swift::GenericSignature *, const RequirementSource *, swift::ProtocolDecl *, swift::Type) const
```

Assertion context:

```c++

      // Canonicalize this step with respect to the requirement signature.
      if (!inProtocol->isRequirementSignatureComputed()) {
        inProtocol->computeRequirementSignature();
        assert(inProtocol->isRequirementSignatureComputed() &&
               "missing signature");
      }

      // Get a generic signature builder for the requirement signature. This has
      // the requirement we need.
      auto reqSig = inProtocol->getRequirementSignature();
```
Stack trace:

```
0 0x0000000003a5f2b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5f2b8)
1 0x0000000003a5f9f6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f9f6)
2 0x00007fa1551e2390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x00007fa153708428 gsignal /build/glibc-9tT8Do/glibc-2.23/signal/../sysdeps/unix/sysv/linux/raise.c:54:0
4 0x00007fa15370a02a abort /build/glibc-9tT8Do/glibc-2.23/stdlib/abort.c:91:0
5 0x00007fa153700bd7 __assert_fail_base /build/glibc-9tT8Do/glibc-2.23/assert/assert.c:92:0
6 0x00007fa153700c82 (/lib/x86_64-linux-gnu/libc.so.6+0x2dc82)
7 0x00000000015570f0 std::_Function_base::_Base_manager<swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl*, swift::ModuleDecl&)::$_11>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation) (/path/to/swift/bin/swift+0x15570f0)
8 0x0000000001556fc3 std::_Function_handler<void (swift::GenericSignature*, swift::GenericSignatureBuilder::RequirementSource const*, swift::ProtocolDecl*, swift::Type), swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl*, swift::ModuleDecl&)::$_11>::_M_invoke(std::_Any_data const&, swift::GenericSignature*&&, swift::GenericSignatureBuilder::RequirementSource const*&&, swift::ProtocolDecl*&&, swift::Type&&) (/path/to/swift/bin/swift+0x1556fc3)
9 0x0000000001555d09 swift::GenericSignature::getConformanceAccessPath(swift::Type, swift::ProtocolDecl*, swift::ModuleDecl&) (/path/to/swift/bin/swift+0x1555d09)
10 0x00000000015ad825 swift::SubstitutionMap::lookupConformance(swift::CanType, swift::ProtocolDecl*) const (/path/to/swift/bin/swift+0x15ad825)
11 0x00000000015b9f80 swift::LookUpConformanceInSubstitutionMap::operator()(swift::CanType, swift::Type, swift::ProtocolType*) const (/path/to/swift/bin/swift+0x15b9f80)
12 0x0000000000c246d9 llvm::Optional<swift::ProtocolConformanceRef> llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>::callback_fn<swift::LookUpConformanceInSubstitutionMap>(long, swift::CanType, swift::Type, swift::ProtocolType*) (/path/to/swift/bin/swift+0xc246d9)
13 0x00000000015ba484 getMemberForBaseType(llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::Type, swift::Type, swift::AssociatedTypeDecl*, swift::Identifier, swift::SubstOptions) (/path/to/swift/bin/swift+0x15ba484)
14 0x00000000015bee5d llvm::Optional<swift::Type> llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>::callback_fn<substType(swift::Type, llvm::function_ref<swift::Type (swift::SubstitutableType*)>, llvm::function_ref<llvm::Optional<swift::ProtocolConformanceRef> (swift::CanType, swift::Type, swift::ProtocolType*)>, swift::SubstOptions)::$_17>(long, swift::TypeBase*) (/path/to/swift/bin/swift+0x15bee5d)
15 0x00000000015bb3d9 swift::Type::transformRec(llvm::function_ref<llvm::Optional<swift::Type> (swift::TypeBase*)>) const (/path/to/swift/bin/swift+0x15bb3d9)
16 0x00000000015b6765 swift::Type::subst(swift::SubstitutionMap const&, swift::SubstOptions) const (/path/to/swift/bin/swift+0x15b6765)
17 0x00000000013bc10e swift::TypeChecker::substMemberTypeWithBase(swift::ModuleDecl*, swift::TypeDecl*, swift::Type) (/path/to/swift/bin/swift+0x13bc10e)
18 0x00000000013bbe00 swift::TypeChecker::resolveTypeInContext(swift::TypeDecl*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*) (/path/to/swift/bin/swift+0x13bbe00)
19 0x00000000013c3a1e resolveTypeDecl(swift::TypeChecker&, swift::TypeDecl*, swift::SourceLoc, swift::DeclContext*, swift::GenericIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13c3a1e)
20 0x00000000013c2e19 resolveTopLevelIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, swift::ComponentIdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13c2e19)
21 0x00000000013bdab3 resolveIdentTypeComponent(swift::TypeChecker&, swift::DeclContext*, llvm::ArrayRef<swift::ComponentIdentTypeRepr*>, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bdab3)
22 0x00000000013bd489 swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bd489)
23 0x00000000013be1f8 (anonymous namespace)::TypeResolver::resolveType(swift::TypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>) (/path/to/swift/bin/swift+0x13be1f8)
24 0x00000000013be0fc swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13be0fc)
25 0x00000000013bcb50 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) (/path/to/swift/bin/swift+0x13bcb50)
26 0x00000000013556d3 (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl*) (/path/to/swift/bin/swift+0x13556d3)
27 0x0000000001341454 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341454)
28 0x000000000134346d swift::TypeChecker::validateDecl(swift::ValueDecl*) (/path/to/swift/bin/swift+0x134346d)
29 0x0000000001341f12 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341f12)
30 0x000000000135316b (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x135316b)
31 0x0000000001341434 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341434)
32 0x000000000135316b (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x135316b)
33 0x0000000001341434 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1341434)
34 0x0000000001341333 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1341333)
35 0x00000000013cba85 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cba85)
36 0x0000000000f93106 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf93106)
37 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
38 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
39 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
40 0x00007fa1536f3830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
41 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-05 09:43:14 +02:00
practicalswift
e7a3958804 [swiftc (29 vs. 5544)] Add crasher in swift::ProtocolConformanceRef
Add test case for crash triggered in `swift::ProtocolConformanceRef`.

Current number of unresolved compiler crashers: 29 (5544 resolved)

Stack trace:

```
0 0x0000000003a5eb78 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/path/to/swift/bin/swift+0x3a5eb78)
1 0x0000000003a5f2b6 SignalHandler(int) (/path/to/swift/bin/swift+0x3a5f2b6)
2 0x00007f4adba35390 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x11390)
3 0x0000000001575f1d swift::ProtocolConformanceRef llvm::function_ref<swift::ProtocolConformanceRef (swift::ProtocolDecl*)>::callback_fn<swift::GenericSignatureBuilder::addSameTypeRequirementToConcrete(swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type, swift::GenericSignatureBuilder::RequirementSource const*)::$_23>(long, swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x1575f1d)
4 0x000000000155fbc9 concretizeNestedTypeFromConcreteParent(swift::GenericSignatureBuilder::PotentialArchetype*, swift::GenericSignatureBuilder::RequirementSource const*, swift::GenericSignatureBuilder::PotentialArchetype*, swift::GenericSignatureBuilder&, llvm::function_ref<swift::ProtocolConformanceRef (swift::ProtocolDecl*)>) (/path/to/swift/bin/swift+0x155fbc9)
5 0x0000000001568549 swift::GenericSignatureBuilder::addSameTypeRequirementToConcrete(swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type, swift::GenericSignatureBuilder::RequirementSource const*) (/path/to/swift/bin/swift+0x1568549)
6 0x0000000001567c0c swift::GenericSignatureBuilder::addSameTypeRequirement(llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, llvm::PointerUnion<swift::GenericSignatureBuilder::PotentialArchetype*, swift::Type>, swift::GenericSignatureBuilder::FloatingRequirementSource, swift::GenericSignatureBuilder::UnresolvedHandlingKind, llvm::function_ref<void (swift::Type, swift::Type)>) (/path/to/swift/bin/swift+0x1567c0c)
7 0x000000000155ee8e swift::GenericSignatureBuilder::PotentialArchetype::updateNestedTypeForConformance(llvm::PointerUnion<swift::AssociatedTypeDecl*, swift::TypeDecl*>, swift::GenericSignatureBuilder::PotentialArchetype::NestedTypeUpdate) (/path/to/swift/bin/swift+0x155ee8e)
8 0x000000000155d9d2 swift::GenericSignatureBuilder::PotentialArchetype::getNestedArchetypeAnchor(swift::Identifier, swift::GenericSignatureBuilder&, swift::GenericSignatureBuilder::PotentialArchetype::NestedTypeUpdate) (/path/to/swift/bin/swift+0x155d9d2)
9 0x000000000156be5c swift::GenericSignatureBuilder::checkSameTypeConstraints(llvm::ArrayRef<swift::GenericTypeParamType*>, swift::GenericSignatureBuilder::PotentialArchetype*) (/path/to/swift/bin/swift+0x156be5c)
10 0x0000000001569100 swift::GenericSignatureBuilder::finalize(swift::SourceLoc, llvm::ArrayRef<swift::GenericTypeParamType*>, bool) (/path/to/swift/bin/swift+0x1569100)
11 0x000000000136eaca swift::TypeChecker::validateGenericFuncSignature(swift::AbstractFunctionDecl*) (/path/to/swift/bin/swift+0x136eaca)
12 0x0000000001353844 (anonymous namespace)::DeclChecker::visitConstructorDecl(swift::ConstructorDecl*) (/path/to/swift/bin/swift+0x1353844)
13 0x0000000001340eb4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1340eb4)
14 0x0000000001340da3 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1340da3)
15 0x0000000001431c7e swift::createImplicitConstructor(swift::TypeChecker&, swift::NominalTypeDecl*, swift::ImplicitConstructorKind) (/path/to/swift/bin/swift+0x1431c7e)
16 0x00000000013494c2 swift::TypeChecker::defineDefaultConstructor(swift::NominalTypeDecl*) (/path/to/swift/bin/swift+0x13494c2)
17 0x0000000001348366 swift::TypeChecker::addImplicitConstructors(swift::NominalTypeDecl*) (/path/to/swift/bin/swift+0x1348366)
18 0x0000000001351af5 (anonymous namespace)::DeclChecker::visitClassDecl(swift::ClassDecl*) (/path/to/swift/bin/swift+0x1351af5)
19 0x0000000001340f9e (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1340f9e)
20 0x0000000001352bdb (anonymous namespace)::DeclChecker::visitProtocolDecl(swift::ProtocolDecl*) (/path/to/swift/bin/swift+0x1352bdb)
21 0x0000000001340ea4 (anonymous namespace)::DeclChecker::visit(swift::Decl*) (/path/to/swift/bin/swift+0x1340ea4)
22 0x0000000001340da3 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) (/path/to/swift/bin/swift+0x1340da3)
23 0x00000000013ada86 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13ada86)
24 0x00000000013ad13b swift::TypeChecker::typeCheckClosureBody(swift::ClosureExpr*) (/path/to/swift/bin/swift+0x13ad13b)
25 0x00000000013d102c swift::constraints::ConstraintSystem::applySolution(swift::constraints::Solution&, swift::Expr*, swift::Type, bool, bool, bool) (/path/to/swift/bin/swift+0x13d102c)
26 0x000000000132a22d swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::TypeLoc, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem*) (/path/to/swift/bin/swift+0x132a22d)
27 0x00000000013adae5 swift::ASTVisitor<(anonymous namespace)::StmtChecker, void, swift::Stmt*, void, void, void, void>::visit(swift::Stmt*) (/path/to/swift/bin/swift+0x13adae5)
28 0x00000000013ad2f6 swift::TypeChecker::typeCheckTopLevelCodeDecl(swift::TopLevelCodeDecl*) (/path/to/swift/bin/swift+0x13ad2f6)
29 0x00000000013cb730 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) (/path/to/swift/bin/swift+0x13cb730)
30 0x0000000000f92b76 swift::CompilerInstance::performSema() (/path/to/swift/bin/swift+0xf92b76)
31 0x00000000004aaa09 performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) (/path/to/swift/bin/swift+0x4aaa09)
32 0x00000000004a8f9c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/path/to/swift/bin/swift+0x4a8f9c)
33 0x00000000004655c7 main (/path/to/swift/bin/swift+0x4655c7)
34 0x00007f4ad9f46830 __libc_start_main /build/glibc-9tT8Do/glibc-2.23/csu/../csu/libc-start.c:325:0
35 0x0000000000462c69 _start (/path/to/swift/bin/swift+0x462c69)
```
2017-06-05 00:19:22 +02:00
Robert Widmann
25901cc467 Merge pull request #10065 from CodaFi/shame-on-you-shame-on-your-cow
Change an assertion to an ad-hoc circularity check
2017-06-02 11:40:06 -07:00
Robert Widmann
12f81163b1 Change an assertion to an ad-hoc circularity check 2017-06-02 10:23:02 -07:00
swift-ci
032c18c426 Merge pull request #10064 from CodaFi/thats-not-my-name 2017-06-02 00:37:12 -07:00
Robert Widmann
72ee26a52f Resolve a crasher 2017-06-01 23:58:14 -07:00
Jordan Rose
63bc717963 Error when one associated type is constrained to another. (#10053)
(...is constrained to be a subtype of another)

Previously the compiler would just mark the entry in the inheritance
clause invalid and move on without emitting any errors; in certain
circumstances in no-asserts builds this could actually lead to
everything working "correctly" if all conforming types happened to
pick the same concrete type for both associated types. In Swift 4 this
can actually be enforced with a same-type requirement, which will
guarantee that the two associated types are the same even in generic
contexts.

This fix avoids assertions and crashes, but the diagnostic is still
incorrect, and in the simple case of the inheritance clause it's
redundant. Doing something better and possibly even downgrading it to
a warning in Swift 3 mode is tracked by rdar://problem/32409449.

Initial patch by Slava, fixed up by me.
2017-06-01 19:45:34 -07:00