Index: src/Concurrency/Keywords.cc
===================================================================
--- src/Concurrency/Keywords.cc	(revision ecfd7589e4796949fcc35b475a024d4acda6e636)
+++ src/Concurrency/Keywords.cc	(revision 578c09abc3a6baa5d93897b74eadcba17d0dfe3f)
@@ -414,7 +414,5 @@
 		if ( type_decl && isDestructorFor( decl, type_decl ) )
 			dtor_decl = decl;
-		else if ( vtable_name.empty() )
-			;
-		else if( !decl->has_body() )
+		else if ( vtable_name.empty() || !decl->has_body() )
 			;
 		else if ( auto param = isMainFor( decl, cast_target ) ) {
@@ -428,6 +426,17 @@
 			std::list< Expression * > poly_args = { new TypeExpr( struct_type->clone() ) };
 			ObjectDecl * vtable_object = Virtual::makeVtableInstance(
+				"_default_vtable_object_declaration",
 				vtable_decl->makeInst( poly_args ), struct_type, nullptr );
 			declsToAddAfter.push_back( vtable_object );
+			declsToAddAfter.push_back(
+				new ObjectDecl(
+					Virtual::concurrentDefaultVTableName(),
+					Type::Const,
+					LinkageSpec::Cforall,
+					/* bitfieldWidth */ nullptr,
+					new ReferenceType( Type::Const, vtable_object->type->clone() ),
+					new SingleInit( new VariableExpr( vtable_object ) )
+				)
+			);
 			declsToAddAfter.push_back( Virtual::makeGetExceptionFunction(
 				vtable_object, except_decl->makeInst( std::move( poly_args ) )
@@ -488,6 +497,18 @@
 			except_decl->makeInst( poly_args )
 		) );
-		declsToAddBefore.push_back( Virtual::makeVtableForward(
-			vtable_decl->makeInst( move( poly_args ) ) ) );
+		ObjectDecl * vtable_object = Virtual::makeVtableForward(
+			"_default_vtable_object_declaration",
+			vtable_decl->makeInst( move( poly_args ) ) );
+		declsToAddBefore.push_back( vtable_object );
+		declsToAddAfter.push_back(
+			new ObjectDecl(
+				Virtual::concurrentDefaultVTableName(),
+				Type::Const,
+				LinkageSpec::Cforall,
+				/* bitfieldWidth */ nullptr,
+				new ReferenceType( Type::Const, vtable_object->type->clone() ),
+				/* init */ nullptr
+			)
+		);
 	}
 
