Commit 662e6e7d authored by Miklos Magyari's avatar Miklos Magyari
Browse files

Fixed BrokenPartsChecker not to hide exceptions; Class_Type NPE fix and incremental parsing updates


Signed-off-by: Miklos Magyari's avatarMiklos Magyari <miklos.magyari@sigmatechnology.se>
parent 55c8a313
......@@ -366,6 +366,9 @@ public final class Class_Type extends Type implements ITypeWithComponents {
if (baseTraits != null) {
for (int i = 0; i < baseTraits.getNofTypes(); i++) {
Type t = baseTraits.getType(i);
if (t == null) {
continue; // super class
}
t.check(timestamp);
if (!(t.getTypeRefdLast(timestamp) instanceof Class_Type)) {
if (! t.getIsErroneous(timestamp)) {
......@@ -1159,13 +1162,13 @@ public final class Class_Type extends Type implements ITypeWithComponents {
lastTimeChecked = null;
boolean handled = false;
// if (getLocation() != null) {
// if (reparser.envelopsDamage(getLocation())) {
// updateSyntax(reparser, true);
// reparser.updateLocation(getLocation());
// handled = true;
// }
// }
if (getLocation() != null) {
if (reparser.envelopsDamage(getLocation())) {
updateSyntax(reparser, true);
reparser.updateLocation(getLocation());
handled = true;
}
}
if (subType != null) {
subType.updateSyntax(reparser, false);
......@@ -1179,10 +1182,10 @@ public final class Class_Type extends Type implements ITypeWithComponents {
throw new ReParseException();
}
// if (classBody != null) {
// classBody.updateSyntax(reparser, false);
// reparser.updateLocation(classBody.getLocation());
// }
if (body != null) {
body.updateSyntax(reparser, false);
reparser.updateLocation(body.getLocation());
}
if (subType != null) {
subType.updateSyntax(reparser, false);
......
......@@ -237,6 +237,8 @@ public final class BrokenPartsChecker {
final long now = System.nanoTime();
TITANDebugConsole.println(" **It took (" + (absoluteStart2 - absoluteStart) + "," + (now - absoluteStart) + ") " + (now - absoluteStart2) * (1e-9) + " seconds for Designer to check " + module.getName());
} catch (Exception e) {
e.printStackTrace();
} finally {
modulesBeingChecked.remove(module);
progress.worked(1);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment