Skip to content
This repository was archived by the owner on Mar 5, 2025. It is now read-only.

Commit 7539d67

Browse files
committed
Merge branch 'master' into renamings-for-move-to-rascal
2 parents 5fee8f2 + 6f281fc commit 7539d67

File tree

4 files changed

+41
-16
lines changed

4 files changed

+41
-16
lines changed

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@
156156
<plugin>
157157
<groupId>org.rascalmpl</groupId>
158158
<artifactId>rascal-maven-plugin</artifactId>
159-
<version>0.28.9-BOOT1</version>
159+
<version>0.28.9</version>
160160
<!-- disabled for release
161161
<configuration>
162162
<generated>${project.build.directory}/generated-test-sources</generated>
@@ -228,7 +228,7 @@
228228
<dependency>
229229
<groupId>org.rascalmpl</groupId>
230230
<artifactId>typepal</artifactId>
231-
<version>0.14.8-SNAPSHOT</version>
231+
<version>0.15.0-RC1</version>
232232
</dependency>
233233
<dependency>
234234
<groupId>io.usethesource</groupId>

src/org/rascalmpl/core/library/lang/rascalcore/check/Checker.rsc

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,17 @@ tuple[TModel, ModuleStatus] rascalTModelComponent(set[str] moduleNames, ModuleSt
394394
for(str nm <- moduleNames){
395395
//ms.status[nm] = {};
396396
ms.messages[nm] = {};
397-
mloc = getModuleLocation(nm, pcfg);
397+
mloc = |unknown:///|(0,0,<0,0>,<0,0>);
398+
try {
399+
mloc = getModuleLocation(nm, pcfg);
400+
} catch e: {
401+
err = error("Cannot get location for <nm>: <e>", mloc);
402+
ms.messages[nm] = { err };
403+
ms.status[nm] += { rsc_not_found() };
404+
tm = tmodel(modelName=nm, messages=[ err ]);
405+
ms = addTModel(nm, tm, ms);
406+
return <tm, ms>;
407+
}
398408
if(mloc.extension != "rsc" || isModuleLocationInLibs(nm, mloc, pcfg)){
399409
continue;
400410
}
@@ -470,8 +480,9 @@ ModuleStatus rascalTModelForNames(list[str] moduleNames,
470480
mlocs += [ getModuleLocation(moduleName, pcfg) ];
471481
} catch value e: {
472482
mloc = |unknown:///|(0,0,<0,0>,<0,0>);
483+
err = error("Cannot get location for <moduleName>: <e>", mloc);
473484
ms = newModuleStatus(compilerConfig);
474-
ms.messages[moduleName] = { error("<e>", mloc) };
485+
ms.messages[moduleName] = { err };
475486
return ms;
476487
}
477488
}

src/org/rascalmpl/core/library/lang/rascalcore/check/CheckerCommon.rsc

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -130,13 +130,17 @@ datetime getLastModified(str qualifiedModuleName, map[str, datetime] moduleLastM
130130
}
131131

132132
bool tplOutdated(str qualifiedModuleName, PathConfig pcfg){
133-
mloc = getModuleLocation(qualifiedModuleName, pcfg);
134-
<found, tpl> = getTPLReadLoc(qualifiedModuleName, pcfg);
135-
lmMloc = lastModified(mloc);
136-
lmTpl = lastModified(tpl);
137-
res = !found || lmMloc > lmTpl;
138-
//println("tplOutdated <qualifiedModuleName>: <res>; mloc: <lmMloc> \> tpl: <lmTpl>: <lmMloc > lmTpl>, (<mloc>, <tpl>)");
139-
return res;
133+
try {
134+
mloc = getModuleLocation(qualifiedModuleName, pcfg);
135+
<found, tpl> = getTPLReadLoc(qualifiedModuleName, pcfg);
136+
lmMloc = lastModified(mloc);
137+
lmTpl = lastModified(tpl);
138+
res = !found || lmMloc > lmTpl;
139+
//println("tplOutdated <qualifiedModuleName>: <res>; mloc: <lmMloc> \> tpl: <lmTpl>: <lmMloc > lmTpl>, (<mloc>, <tpl>)");
140+
return res;
141+
} catch e: {
142+
return false;
143+
}
140144
}
141145

142146
int parseTreeCacheSize = 20;
@@ -166,7 +170,7 @@ tuple[bool, Module, ModuleStatus] getModuleParseTree(str qualifiedModuleName, Mo
166170
throw "No src or library module";
167171
}
168172
} catch _: {
169-
//ms.messages[qualifiedModuleName] ? [] = [error("Module <qualifiedModuleName> not found", mloc)];
173+
ms.messages[qualifiedModuleName] ? {} += {error("Module <qualifiedModuleName> not found", mloc)};
170174
mpt = [Module] "module <qualifiedModuleName>";
171175
//ms.parseTrees[qualifiedModuleName] = mpt;
172176
ms.moduleLocs[qualifiedModuleName] = mloc;

src/org/rascalmpl/core/library/lang/rascalcore/check/Import.rsc

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ import util::Reflective;
2929
import util::Benchmark;
3030
import lang::rascalcore::compile::util::Names; // TODO: refactor, this is an undesired dependency on compile
3131

32-
str getModuleName(loc mloc, map[loc,str] moduleStrs, PathConfig pcfg){
32+
private str getModuleName(loc mloc, map[loc,str] moduleStrs, PathConfig pcfg){
3333
if(moduleStrs[mloc]? ){
3434
return moduleStrs[mloc];
3535
}
@@ -138,7 +138,17 @@ ModuleStatus getImportAndExtendGraph(str qualifiedModuleName, ModuleStatus ms){
138138
}
139139
if(!allImportsAndExtendsValid){ // Check that the source code of qualifiedModuleName is available
140140
try {
141-
mloc = getModuleLocation(qualifiedModuleName, pcfg);
141+
mloc = |unknown:///|(0,0,<0,0>,<0,0>);
142+
try {
143+
mloc = getModuleLocation(qualifiedModuleName, pcfg);
144+
} catch e: {
145+
err = error("Cannot get location for <qualifiedModuleName>: <e>", mloc);
146+
ms.messages[qualifiedModuleName] = { err };
147+
tm = tmodel(modelName=qualifiedModuleName, messages=[ err ]);
148+
ms = addTModel(qualifiedModuleName, tm, ms);
149+
ms.status[qualifiedModuleName] += { rsc_not_found() };
150+
return ms;
151+
}
142152
if(mloc.extension != "rsc" || isModuleLocationInLibs(qualifiedModuleName, mloc, pcfg)) throw "No src or library module 1"; //There is only a tpl file available
143153
} catch value _:{
144154
<compatible, ms> = isCompatibleBinaryLibrary(tm, domain(localImportsAndExtends), ms);
@@ -269,9 +279,9 @@ tuple[ModuleStatus, rel[str, PathRole, str]] getModulePathsAsStr(Module m, Modul
269279
ms.status[iname] = ms.status[iname] ? {};
270280
try {
271281
mloc = getModuleLocation(iname, ms.pathConfig);
272-
//if(mloc.extension != "rsc" || isModuleLocationInLibs(iname, mloc, ms.pathConfig)) throw "No src or library module 2";
273282
} catch str msg: {
274-
ms.messages[moduleName] ? {} += { error(msg, imod@\loc) };
283+
err = error("Cannot get location for <iname>: <msg>", imod@\loc);
284+
ms.messages[moduleName] ? {} += { err };
275285
ms.status[iname] += { rsc_not_found() };
276286
}
277287
}

0 commit comments

Comments
 (0)