Index: src/Parser/ExpressionNode.cc
===================================================================
--- src/Parser/ExpressionNode.cc	(revision 5721a6da612c3a9661eb16d198fe90326b196c40)
+++ src/Parser/ExpressionNode.cc	(revision 2a4b0884c14643e09650daaeb3a6667b5bff6b48)
@@ -606,5 +606,12 @@
 	  case OperatorNode::OffsetOf:
 		{
-			assert( false );
+			assert( args.size() == 2 );
+			
+			if ( TypeValueNode * arg = dynamic_cast<TypeValueNode *>( get_args() ) ) {
+				NameExpr *member = dynamic_cast<NameExpr *>( args.back() );
+				assert( member != 0 );
+
+				return new UntypedOffsetofExpr( arg->get_decl()->buildType(), member->get_name() );
+			} else assert( false );
 		}
 	  case OperatorNode::Attr:
