Utilize TypeReprs for type checking.

-Refactor Parser to stop creating types
-Refactor TypeChecker to create types by resolving TypeReprs.
-Remove "validation" bit from the type system.
  We don't need to "validate" every type that gets created but there's still a validation bit in TypeLoc,
  necessary because of generic substitutions.

Swift SVN r6326
This commit is contained in:
Argyrios Kyrtzidis
2013-07-17 14:57:35 +00:00
parent 0d0e0d1939
commit f616eeee8b
21 changed files with 729 additions and 739 deletions

View File

@@ -851,5 +851,5 @@ ExprHandle *ExprHandle::get(ASTContext &Context, Expr *E) {
}
void TypeLoc::setInvalidType(ASTContext &C) {
T = ErrorType::get(C);
TAndValidBit.setPointerAndInt(ErrorType::get(C), true);
}