Index: src/Validate/LinkReferenceToTypes.cpp
===================================================================
--- src/Validate/LinkReferenceToTypes.cpp	(revision caf06aa71fb525bbcc4811ec5a00225c9c9c6583)
+++ src/Validate/LinkReferenceToTypes.cpp	(revision 3bf9d101e125e952f9abb0271db2208c769320f8)
@@ -84,5 +84,5 @@
 		// Just linking in the node.
 		auto mut = ast::mutate( type );
-		mut->base = const_cast<ast::EnumDecl *>( decl );
+		mut->base = decl;
 		type = mut;
 	}
@@ -101,5 +101,5 @@
 		// Just linking in the node.
 		auto mut = ast::mutate( type );
-		mut->base = const_cast<ast::StructDecl *>( decl );
+		mut->base = decl;
 		type = mut;
 	}
@@ -118,5 +118,5 @@
 		// Just linking in the node.
 		auto mut = ast::mutate( type );
-		mut->base = const_cast<ast::UnionDecl *>( decl );
+		mut->base = decl;
 		type = mut;
 	}
@@ -141,5 +141,5 @@
 
 	// Just linking in the node.
-	mut->base = const_cast<ast::TraitDecl *>( decl );
+	mut->base = decl;
 
 	// Need to carry over the 'sized' status of each decl in the instance.
@@ -203,6 +203,4 @@
 	}
 
-	// The following section 
-
 	ForwardEnumsType::iterator fwds = forwardEnums.find( decl->name );
 	if ( fwds != forwardEnums.end() ) {
