Index: src/SynTree/Type.h
===================================================================
--- src/SynTree/Type.h	(revision 582ee2851d02bc30a951c8b62bf2576587e3ad25)
+++ src/SynTree/Type.h	(revision 99b7d4fc43164137d0f4b6e738bf7382f6f87432)
@@ -298,5 +298,8 @@
 	void set_isStatic( bool newValue ) { isStatic = newValue; }
 
-	virtual bool isComplete() const override { return ! isVarLen; }
+	// array types are complete if they have a dimension expression or are
+	// VLAs ('*' in parameter declaration), and incomplete otherwise.
+	// See 6.7.6.2
+	virtual bool isComplete() const override { return dimension || isVarLen; }
 
 	virtual ArrayType *clone() const override { return new ArrayType( *this ); }
