|
@@ -66,6 +66,10 @@ interface
|
|
|
function first_int_real: tnode; virtual;
|
|
|
function first_abs_long: tnode; virtual;
|
|
|
function first_setlength: tnode; virtual;
|
|
|
+ { This one by default generates an internal error, because such
|
|
|
+ nodes are not generated by the parser. It's however used internally
|
|
|
+ by the JVM backend to create new dynamic arrays. }
|
|
|
+ function first_new: tnode; virtual;
|
|
|
private
|
|
|
function handle_str: tnode;
|
|
|
function handle_reset_rewrite_typed: tnode;
|
|
@@ -3215,6 +3219,8 @@ implementation
|
|
|
in_bsf_x,
|
|
|
in_bsr_x:
|
|
|
expectloc:=LOC_REGISTER;
|
|
|
+ in_new_x:
|
|
|
+ result:=first_new;
|
|
|
else
|
|
|
internalerror(89);
|
|
|
end;
|
|
@@ -3416,6 +3422,12 @@ implementation
|
|
|
result:=newblock;
|
|
|
end;
|
|
|
|
|
|
+ function tinlinenode.first_new: tnode;
|
|
|
+ begin
|
|
|
+ internalerror(2011012201);
|
|
|
+ result:=nil;
|
|
|
+ end;
|
|
|
+
|
|
|
function tinlinenode.first_pack_unpack: tnode;
|
|
|
var
|
|
|
loopstatement : tstatementnode;
|