diff --git a/src/main/jastadd/Analysis.jrag b/src/main/jastadd/Analysis.jrag
index 941256ed7fbdcd994a9e0b1f5c4a3282fc885e9f..8f586cea6bbd0abd286b15a8fb618ff5660067f3 100644
--- a/src/main/jastadd/Analysis.jrag
+++ b/src/main/jastadd/Analysis.jrag
@@ -170,7 +170,9 @@ aspect Constructors {
       list.addAll(getSuper().decl().componentsTransitive());
     }
     for (Component c: getComponents()) {
-      list.add(c);
+      if (c.inConstructor()) {
+        list.add(c);
+      }
     }
     return list;
   }
@@ -186,6 +188,12 @@ aspect Constructors {
       && getSuper().decl() != null
       && getSuper().decl().needsConstructor();
   }
+
+  /**
+   * @return true, if the component should be added to the constructor (i.e., is not an NTA)
+   */
+  syn boolean Component.inConstructor() = true;
+  eq NTAComponent.inConstructor() = false;
 }
 
 aspect Utils {
diff --git a/src/test/jastadd/relations/Relations.relast b/src/test/jastadd/relations/Relations.relast
index 51f3c621f8e71ec70412e8b88bc0802a6d37f7a0..6a5622902d79ebffe1b679c291fa84dd12b35f67 100644
--- a/src/test/jastadd/relations/Relations.relast
+++ b/src/test/jastadd/relations/Relations.relast
@@ -1,5 +1,5 @@
 Root ::= A* B*;
-A ::= <Name>;
+A ::= <Name> /SomeNTA:A/;
 B ::= <Name>;
 
 rel A.Di1  -> B;