Index: src/CodeGen/CodeGenerator.cpp
===================================================================
--- src/CodeGen/CodeGenerator.cpp	(revision db19e1d0d4adcc296ca7022c295f441155d4b6dc)
+++ src/CodeGen/CodeGenerator.cpp	(revision b6f2e7abcc170946c8758bcf25e0848b57d5f213)
@@ -744,8 +744,8 @@
 	extension( expr );
 	output << "sizeof(";
-	if ( expr->type ) {
+	if ( auto type = expr->type.as<ast::TypeofType>() ) {
+		type->expr->accept( *visitor );
+	} else {
 		output << genType( expr->type, "", options );
-	} else {
-		expr->expr->accept( *visitor );
 	}
 	output << ")";
@@ -756,8 +756,8 @@
 	extension( expr );
 	output << "__alignof__(";
-	if ( expr->type ) {
+	if ( auto type = expr->type.as<ast::TypeofType>() ) {
+		type->expr->accept( *visitor );
+	} else {
 		output << genType( expr->type, "", options );
-	} else {
-		expr->expr->accept( *visitor );
 	}
 	output << ")";
