Index: src/CodeGen/CodeGenerator.cc
===================================================================
--- src/CodeGen/CodeGenerator.cc	(revision 58094611c386c7e6f0ba52d00ecf89b154288c42)
+++ src/CodeGen/CodeGenerator.cc	(revision a0c7dc36aea9a9949803d2973e714ade8c8e51e8)
@@ -258,5 +258,5 @@
 
 	void CodeGenerator::visit( TraitDecl * traitDecl ) {
-		assertf( ! genC, "TraitDecl nodes should not reach code generation." );
+		assertf( ! genC, "TraitDecls should not reach code generation." );
 		extension( traitDecl );
 		handleAggregate( traitDecl, "trait " );
@@ -271,22 +271,13 @@
 
 	void CodeGenerator::visit( TypeDecl * typeDecl ) {
-		if ( genC ) {
-			// really, we should mutate this into something that isn't a TypeDecl but that requires large-scale changes,
-			// still to be done
-			extension( typeDecl );
-			output << "extern unsigned long " << typeDecl->get_name();
-			if ( typeDecl->get_base() ) {
-				output << " = sizeof( " << genType( typeDecl->get_base(), "", pretty, genC ) << " )";
-			} // if
-		} else {
-			output << typeDecl->genTypeString() << " " << typeDecl->get_name();
-			if ( typeDecl->get_kind() != TypeDecl::Any && typeDecl->get_sized() ) {
-				output << " | sized(" << typeDecl->get_name() << ")";
-			}
-			if ( ! typeDecl->get_assertions().empty() ) {
-				output << " | { ";
-				genCommaList( typeDecl->get_assertions().begin(), typeDecl->get_assertions().end() );
-				output << " }";
-			}
+		assertf( ! genC, "TypeDecls should not reach code generation." );
+		output << typeDecl->genTypeString() << " " << typeDecl->get_name();
+		if ( typeDecl->get_kind() != TypeDecl::Any && typeDecl->get_sized() ) {
+			output << " | sized(" << typeDecl->get_name() << ")";
+		}
+		if ( ! typeDecl->get_assertions().empty() ) {
+			output << " | { ";
+			genCommaList( typeDecl->get_assertions().begin(), typeDecl->get_assertions().end() );
+			output << " }";
 		}
 	}
