diff --git a/src/qir/QIRLanguage.java b/src/qir/QIRLanguage.java index dc1f24dd7754261750ac884ae7236dcf33591b0c..1fc7a9893515a31de39f07d24f51f8fa398f1a4a 100644 --- a/src/qir/QIRLanguage.java +++ b/src/qir/QIRLanguage.java @@ -9,7 +9,7 @@ import qir.runtime.QIRContext; * QIR (Query Intermediate Language) is a language that aims to be able to encode any query from any * language or database. */ -@TruffleLanguage.Registration(name = "QIR", version = "0.20", mimeType = QIRLanguage.MIME_TYPE) +@TruffleLanguage.Registration(name = "QIR", version = "0.20", id = "QIR") public final class QIRLanguage extends TruffleLanguage<QIRContext> { public static final String MIME_TYPE = "application/x-qir"; diff --git a/src/qir/typing/QIRGenericTypeSystemVisitor.java b/src/qir/typing/QIRGenericTypeSystemVisitor.java index 1db63adaac8e092c49ae2a0e2c5d2f54d7026976..b75060cd43b9fc2403294e04cec8a92df7f0a412 100644 --- a/src/qir/typing/QIRGenericTypeSystemVisitor.java +++ b/src/qir/typing/QIRGenericTypeSystemVisitor.java @@ -64,9 +64,9 @@ public final class QIRGenericTypeSystemVisitor extends QIRTypeSystemVisitor { private static final QIRType tryTyping(final QIRNode expr) { for (Class<? extends QIRSpecificTypeSystem> specificTypeSystem : specificTypeSystems) try { - return expr.setType(expr.accept(specificTypeSystem.newInstance()), specificTypeSystem); + return expr.setType(expr.accept(specificTypeSystem.getDeclaredConstructor().newInstance()), specificTypeSystem); } catch (final QIRTypeErrorException e) { - } catch (final InstantiationException | IllegalAccessException e) { + } catch (final Exception e) { throw new QIRException("Internal error: " + specificTypeSystem.getName() + " could not be instantiated."); } try {