From 7dcacaacfe9198c397b6e049006c5386ea2f5f42 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Doderlein Date: Fri, 23 Oct 2026 16:38:04 +0200 Subject: [PATCH 1/2] Add Undeclared Module --- src/org/rascalmpl/interpreter/TypeDeclarationEvaluator.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/org/rascalmpl/interpreter/TypeDeclarationEvaluator.java b/src/org/rascalmpl/interpreter/TypeDeclarationEvaluator.java index 44aaf1a1cc2..aa7ecefcc18 100644 --- a/src/org/rascalmpl/interpreter/TypeDeclarationEvaluator.java +++ b/src/org/rascalmpl/interpreter/TypeDeclarationEvaluator.java @@ -45,6 +45,7 @@ import org.rascalmpl.interpreter.staticErrors.RedeclaredField; import org.rascalmpl.interpreter.staticErrors.RedeclaredType; import org.rascalmpl.interpreter.staticErrors.SyntaxError; +import org.rascalmpl.interpreter.staticErrors.UndeclaredModule; import org.rascalmpl.interpreter.staticErrors.UndeclaredType; import org.rascalmpl.interpreter.staticErrors.UnsupportedOperation; import org.rascalmpl.interpreter.utils.Names; @@ -218,8 +219,8 @@ private void declareAliases(Set aliasDecls, boolean ignoreErrors) { declareAlias(trial, env); countdown = todo.size(); } - catch (UndeclaredType e) { - if (countdown == 0) { + catch (UndeclaredType | UndeclaredModule e) { + if (countdown == 0) { // Cycle if (!ignoreErrors) { throw e; From 1714d7fcbcaf045c5abfd651ad6c3be655bc9862 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Doderlein Date: Fri, 23 Oct 2026 18:34:37 +0200 Subject: [PATCH 2/2] Add regression test --- .../rascalmpl/library/lang/rascal/tests/imports/Imports7.rsc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/org/rascalmpl/library/lang/rascal/tests/imports/Imports7.rsc b/src/org/rascalmpl/library/lang/rascal/tests/imports/Imports7.rsc index 6ea68e70568..0445c9d04af 100644 --- a/src/org/rascalmpl/library/lang/rascal/tests/imports/Imports7.rsc +++ b/src/org/rascalmpl/library/lang/rascal/tests/imports/Imports7.rsc @@ -2,9 +2,12 @@ module lang::rascal::tests::imports::Imports7 import lang::rascal::tests::imports::M7; +alias QualifiedTYPE = lang::rascal::tests::imports::M7::TYPE; + test bool Test71() = natural() == natural(); test bool Test72() = string() == string(); test bool Test73() = natural() != string(); +test bool Test74() { QualifiedTYPE t = natural(); return t == natural(); }