Index: src/Parser/TypeData.cc
===================================================================
--- src/Parser/TypeData.cc	(revision cb7caf838d4dc412c00958aaeab276dd4cea834c)
+++ src/Parser/TypeData.cc	(revision d15a45d1ae97e7af1b6a93c57b0131f5963ecb24)
@@ -65,4 +65,5 @@
 	  case Aggregate:
 		// aggregate = new Aggregate_t;
+		aggregate.kind = DeclarationNode::NoAggregate;
 		aggregate.name = nullptr;
 		aggregate.params = nullptr;
@@ -70,4 +71,6 @@
 		aggregate.fields = nullptr;
 		aggregate.body = false;
+		aggregate.tagged = false;
+		aggregate.parent = nullptr;
 		break;
 	  case AggregateInst:
@@ -198,9 +201,9 @@
 		break;
 	  case Aggregate:
+		newtype->aggregate.kind = aggregate.kind;
 		newtype->aggregate.name = aggregate.name ? new string( *aggregate.name ) : nullptr;
 		newtype->aggregate.params = maybeClone( aggregate.params );
 		newtype->aggregate.actuals = maybeClone( aggregate.actuals );
 		newtype->aggregate.fields = maybeClone( aggregate.fields );
-		newtype->aggregate.kind = aggregate.kind;
 		newtype->aggregate.body = aggregate.body;
 		newtype->aggregate.tagged = aggregate.tagged;
