Index: src/GenPoly/Lvalue.cpp
===================================================================
--- src/GenPoly/Lvalue.cpp	(revision 82d58165edb67ebd84a57243ce9ddb0423cc8950)
+++ src/GenPoly/Lvalue.cpp	(revision 4558df29929781e8d911ce6cdc5f0dfac9ef0d8b)
@@ -10,6 +10,6 @@
 // Created On       : Thu Sep 15 14:08:00 2022
 // Last Modified By : Andrew Beach
-// Last Modified On : Wed Oct  6  9:59:00 2022
-// Update Count     : 0
+// Last Modified On : Mon Aug 12 18:07:00 2024
+// Update Count     : 1
 //
 
@@ -119,4 +119,6 @@
 /// Replace all reference types with pointer types.
 struct ReferenceTypeElimination final {
+	ast::SizeofExpr const * previsit( ast::SizeofExpr const * expr );
+	ast::AlignofExpr const * previsit( ast::AlignofExpr const * expr );
 	ast::Type const * postvisit( ast::ReferenceType const * type );
 };
@@ -603,4 +605,18 @@
 }
 
+ast::SizeofExpr const * ReferenceTypeElimination::previsit(
+		ast::SizeofExpr const * expr ) {
+	if ( expr->expr ) return expr;
+	return ast::mutate_field( expr, &ast::SizeofExpr::type,
+		expr->type->stripReferences() );
+}
+
+ast::AlignofExpr const * ReferenceTypeElimination::previsit(
+		ast::AlignofExpr const * expr ) {
+	if ( expr->expr ) return expr;
+	return ast::mutate_field( expr, &ast::AlignofExpr::type,
+		expr->type->stripReferences() );
+}
+
 ast::Type const * ReferenceTypeElimination::postvisit(
 		ast::ReferenceType const * type ) {
