diff --git a/build.gradle b/build.gradle
index 23224582a3c3b40367bb69dea8238759ffb32c5e..7fe72f41a6efadff231ae0171779a31ef027b76f 100644
--- a/build.gradle
+++ b/build.gradle
@@ -26,10 +26,10 @@ configurations.all {
 
 def parser_version
 if (isSnapshot) {
-	parser_version = '2.9.33-SNAPSHOT'
+	parser_version = '2.12.4-SNAPSHOT'
 }
 else {
-	parser_version = '2.9.32'
+	parser_version = '2.12.3'
 }
 
 def tlatools_version = '1.0.2'
@@ -40,7 +40,7 @@ dependencies {
 	api(group: 'de.hhu.stups', name: 'prologlib', version: parser_version)
 	api(group: 'de.hhu.stups', name: 'bparser', version: parser_version)
 
-	testImplementation(group: 'junit', name: 'junit', version: '4.12')
+	testImplementation(group: 'junit', name: 'junit', version: '4.13.2')
 }
 
 java {
@@ -49,7 +49,7 @@ java {
 }
 
 jacoco {
-	toolVersion = "0.8.7"
+	toolVersion = "0.8.9"
 	reportsDirectory = file("$buildDir/customJacocoReportDir")
 }
 
diff --git a/src/main/java/de/tla2b/util/ExtendedDFAdapter.java b/src/main/java/de/tla2b/util/ExtendedDFAdapter.java
index 1161b20aa023338925b2206d2d0de302ccc88cd5..fe500fa9a03ef44861704483de5b4224eaf97587 100644
--- a/src/main/java/de/tla2b/util/ExtendedDFAdapter.java
+++ b/src/main/java/de/tla2b/util/ExtendedDFAdapter.java
@@ -262,10 +262,10 @@ public class ExtendedDFAdapter extends DepthFirstAdapter {
 	public void caseASeesMachineClause(final ASeesMachineClause node) {
 		inASeesMachineClause(node);
 		{
-			final List<PExpression> copy = new ArrayList<PExpression>(node.getMachineNames());
+			final List<PMachineReferenceNoParams> copy = new ArrayList<PMachineReferenceNoParams>(node.getMachineNames());
 			beginList(node);
-			for (final Iterator< PExpression>iterator = copy.iterator(); iterator.hasNext();) {
-				final PExpression e = iterator.next();
+			for (final Iterator< PMachineReferenceNoParams>iterator = copy.iterator(); iterator.hasNext();) {
+				final PMachineReferenceNoParams e = iterator.next();
 				e.apply(this);
 
 				if (iterator.hasNext()) {
@@ -281,10 +281,10 @@ public class ExtendedDFAdapter extends DepthFirstAdapter {
 	public void caseAPromotesMachineClause(final APromotesMachineClause node) {
 		inAPromotesMachineClause(node);
 		{
-			final List<PExpression> copy = new ArrayList<PExpression>(node.getOperationNames());
+			final List<POperationReference> copy = new ArrayList<POperationReference>(node.getOperationNames());
 			beginList(node);
-			for (final Iterator< PExpression>iterator = copy.iterator(); iterator.hasNext();) {
-				final PExpression e = iterator.next();
+			for (final Iterator< POperationReference>iterator = copy.iterator(); iterator.hasNext();) {
+				final POperationReference e = iterator.next();
 				e.apply(this);
 
 				if (iterator.hasNext()) {
@@ -300,10 +300,10 @@ public class ExtendedDFAdapter extends DepthFirstAdapter {
 	public void caseAUsesMachineClause(final AUsesMachineClause node) {
 		inAUsesMachineClause(node);
 		{
-			final List<PExpression> copy = new ArrayList<PExpression>(node.getMachineNames());
+			final List<PMachineReferenceNoParams> copy = new ArrayList<PMachineReferenceNoParams>(node.getMachineNames());
 			beginList(node);
-			for (final Iterator< PExpression>iterator = copy.iterator(); iterator.hasNext();) {
-				final PExpression e = iterator.next();
+			for (final Iterator< PMachineReferenceNoParams>iterator = copy.iterator(); iterator.hasNext();) {
+				final PMachineReferenceNoParams e = iterator.next();
 				e.apply(this);
 
 				if (iterator.hasNext()) {