|
@@ -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;
|