From 1d9fad9c9684926547cabf1e5ae1b6988ca8e69a Mon Sep 17 00:00:00 2001 From: paulklint Date: Sun, 22 Feb 2026 15:55:47 +0100 Subject: [PATCH 1/4] Upgraded to typepal 0.16.5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a251e7c8eb..9b93ac622a 100644 --- a/pom.xml +++ b/pom.xml @@ -458,7 +458,7 @@ org.rascalmpl typepal - 0.16.4 + 0.16.5 compile From 6c70126379d7d6ff3dcce5c44e6c238562f26a3d Mon Sep 17 00:00:00 2001 From: paulklint Date: Mon, 23 Feb 2026 00:15:04 +0100 Subject: [PATCH 2/4] Updated to typepal 0.16.6-RC1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9b93ac622a..92b868dc9e 100644 --- a/pom.xml +++ b/pom.xml @@ -458,7 +458,7 @@ org.rascalmpl typepal - 0.16.5 + 0.16.6-RC1 compile From b531ef3ac5a703189e49cba37b89a9ff2499a71c Mon Sep 17 00:00:00 2001 From: paulklint Date: Tue, 24 Feb 2026 13:31:00 +0100 Subject: [PATCH 3/4] Added test --- .../lang/rascalcore/check/tests/AssignmentTCTests.rsc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/org/rascalmpl/compiler/lang/rascalcore/check/tests/AssignmentTCTests.rsc b/src/org/rascalmpl/compiler/lang/rascalcore/check/tests/AssignmentTCTests.rsc index b29f4c2dd0..70a9a3575d 100644 --- a/src/org/rascalmpl/compiler/lang/rascalcore/check/tests/AssignmentTCTests.rsc +++ b/src/org/rascalmpl/compiler/lang/rascalcore/check/tests/AssignmentTCTests.rsc @@ -218,6 +218,14 @@ test bool TUPLE4() = checkOK(" ltail == [2,3]; }"); +test bool TUPLE5() = checkOK(" + void main(){ + if(true){ + \ = \<123, false\>; + } + x = 456; + }"); + test bool E1() = checkOK("value zz = 1 + 2;"); test bool E2() = checkOK("value zz = 1 + 2.5; "); test bool E3() = unexpectedType("value zz = 1 + true; "); @@ -318,7 +326,6 @@ test bool AssignIntModuleVarOk() { "); } -// @ignore{Test needs typepal version > 0.15.1} test bool AssignAndIncrementIntModuleVarOk() { clearMemory(); writeModule("module A public int X = 1;"); @@ -349,7 +356,6 @@ test bool AssignAndIncrementListIntModuleVarOk() { "); } -//@ignore{Test needs typepal version > 0.15.1} test bool InferredVarAndModuleVarOk(){ clearMemory(); return checkModuleOK(" @@ -362,7 +368,6 @@ test bool InferredVarAndModuleVarOk(){ "); } -// @ignore{Test needs typepal version > 0.15.1} test bool InferredVarAndImportedModuleVarOk(){ clearMemory(); writeModule("module A public int X = 1;"); From 542be4123bd8b787f38ecdf7682d8fd45e0235e0 Mon Sep 17 00:00:00 2001 From: paulklint Date: Tue, 24 Feb 2026 13:31:25 +0100 Subject: [PATCH 4/4] Reverted recent change --- .../compiler/lang/rascalcore/check/CollectStatement.rsc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/org/rascalmpl/compiler/lang/rascalcore/check/CollectStatement.rsc b/src/org/rascalmpl/compiler/lang/rascalcore/check/CollectStatement.rsc index b6c77d3d95..8877c85fef 100644 --- a/src/org/rascalmpl/compiler/lang/rascalcore/check/CollectStatement.rsc +++ b/src/org/rascalmpl/compiler/lang/rascalcore/check/CollectStatement.rsc @@ -715,7 +715,7 @@ private void checkAssignment(Statement current, (Assignable) `", name)){ c.use(name, variableRoles); } else { - c.define(base, variableId(), name, defType([statement], + c.define(base, variableId(), name, defLub([statement], AType(Solver s){ // TODO: this seemingly redundant call is needed; suspicion: the interpreter does not // handle the combination of return and possible exception thrown by s.getType properly