|
@ -1,6 +1,6 @@ |
|
|
# main.leg -- C parser + interpreter |
|
|
# main.leg -- C parser + interpreter |
|
|
# |
|
|
# |
|
|
# Last edited: 2025-02-01 10:15:19 by piumarta on xubuntu |
|
|
|
|
|
|
|
|
# Last edited: 2025-02-01 10:24:25 by piumarta on xubuntu |
|
|
|
|
|
|
|
|
%{ |
|
|
%{ |
|
|
; |
|
|
; |
|
@ -3438,6 +3438,12 @@ void initialiseVariable(oop var, int local) |
|
|
set(var, Variable,value, value); |
|
|
set(var, Variable,value, value); |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
|
|
|
case String: { |
|
|
|
|
|
if (type != t_pchar) fatal("cannot initialise '%s' with string literal", toString(type)); |
|
|
|
|
|
value = newPointer(type, value, 0); |
|
|
|
|
|
set(var, Variable,value, value); |
|
|
|
|
|
break; |
|
|
|
|
|
} |
|
|
case Pointer: { |
|
|
case Pointer: { |
|
|
oop vtype = get(value, Pointer,type); |
|
|
oop vtype = get(value, Pointer,type); |
|
|
if (type != vtype) { |
|
|
if (type != vtype) { |
|
|