@@ -3775,7 +3775,8 @@ implementation
procedure Ttypeconvnode.mark_write;
begin
- left.mark_write;
+ if not(convtype=tc_pointer_2_array) then
+ left.mark_write;
end;
function ttypeconvnode.first_cord_to_pointer : tnode;
@@ -0,0 +1,9 @@
+{ %opt=-O4 -Oodeadstore -Oonoregvar }
+var
+ src: array[0 .. 9] of int32;
+ srcp: pInt32;
+
+begin
+ srcp := pInt32(src);
+ srcp[0] := 1;
+end.