Revision bc3890e997967e29e3049cdb01a64dfe70f1e9f0 authored by Doug Gregor on 29 June 2017, 23:27:52 UTC, committed by Doug Gregor on 30 June 2017, 19:07:44 UTC
The small-but-significant change to the generic signature builder is
to refuse to create unresolved potential archetypes. Instead, delay
any requirement that depends on such type, to be reprocessed once
we've seen all of the other requirements. If the type can be resolved
later, it will be; Otherwise, the type checker will complain when it
sees an unresolvable type. By itself, this fixes the crash in SR-2796.

Doing this by itself regresses diagnostics because typo correction in
the generic signature builder no longer kicks in. Therefore, implement
typo correction for these cases in the type checker proper, using its
existing facilities for typo correction. The result is more consistent
code with a better result.

Fixes SR-2796 / rdar://problem/28544316.

(cherry picked from commit ac8e8aa1b30a11962caa42bf30599534eebef956)
1 parent 93791d5
History
File Mode Size
.github
apinotes
benchmark
bindings
cmake
docs
include
lib
stdlib
test
tools
unittests
utils
validation-test
.clang-format -rw-r--r-- 19 bytes
.dir-locals.el -rw-r--r-- 1.3 KB
.flake8 -rw-r--r-- 1.2 KB
.gitignore -rw-r--r-- 1.9 KB
CHANGELOG.md -rw-r--r-- 229.5 KB
CMakeLists.txt -rw-r--r-- 33.0 KB
CODE_OWNERS.TXT -rw-r--r-- 1.1 KB
CONTRIBUTING.md -rw-r--r-- 544 bytes
LICENSE.txt -rw-r--r-- 11.5 KB
README.md -rw-r--r-- 7.8 KB

README.md

back to top