Nicolas Cannasse пре 11 година
родитељ
комит
e9dabdb941
1 измењених фајлова са 6 додато и 1 уклоњено
  1. 6 1
      hxsl/Checker.hx

+ 6 - 1
hxsl/Checker.hx

@@ -504,7 +504,12 @@ class Checker {
 	function makeVarType( t : Type, parent : TVar, pos : Position ) {
 		switch( t ) {
 		case TStruct(vl):
-			return TStruct([for( v in vl ) makeVar({ type : v.type, qualifiers : v.qualifiers, name : v.name, kind : v.kind, expr : null },pos,parent)]);
+			// mutate to allow TArray to access previously declared vars
+			for( i in 0...vl.length ) {
+				var v = vl[i];
+				vl[i] = makeVar( { type : v.type, qualifiers : v.qualifiers, name : v.name, kind : v.kind, expr : null }, pos, parent);
+			}
+			return t;
 		case TArray(t, size):
 			var s = switch( size ) {
 			case SConst(_): size;