Pseudocode: Implement computation of expected type predicates

This commit is contained in:
Alexey Sedunov
2014-06-23 14:02:22 +04:00
parent 50228fa085
commit 5e2c2b4eca
87 changed files with 1154 additions and 803 deletions
@@ -4,7 +4,7 @@ fun test() {
test()
}
---------------------
Exception() <v0> NEW()
test() <v1> NEW()
{ throw Exception() test() } <v1> COPY
Exception() <v0>: {<: Throwable} NEW()
test() <v1>: * NEW()
{ throw Exception() test() } <v1>: * COPY
=====================
@@ -3,7 +3,7 @@ fun foo() {
return ?: null
}
---------------------
null <v0> NEW()
return ?: null <v0> COPY
{ return ?: null } <v0> COPY
null <v0>: * NEW()
return ?: null <v0>: * COPY
{ return ?: null } <v0>: * COPY
=====================
@@ -3,8 +3,8 @@ fun test() {
"${throw Exception()} ${1}"
}
---------------------
Exception() <v0> NEW()
1 <v1> NEW()
"${throw Exception()} ${1}" <v2> NEW(<v1>)
{ "${throw Exception()} ${1}" } <v2> COPY
Exception() <v0>: {<: Throwable} NEW()
1 <v1>: * NEW()
"${throw Exception()} ${1}" <v2>: * NEW(<v1>)
{ "${throw Exception()} ${1}" } <v2>: * COPY
=====================