bug in (array + integer) evaluation
Original Reporter info from Mantis: FPCCore
-
Reporter name: FPC core team
Original Reporter info from Mantis: FPCCore
- Reporter name: FPC core team
Description:
Patch
Index: compiler/nadd.pas
===================================================================
RCS file: /FPC/CVS/fpc/compiler/nadd.pas,v
retrieving revision 1.137
diff -u -r1.137 nadd.pas
--- compiler/nadd.pas 26 Jan 2005 16:23:28 -0000 1.137
+++ compiler/nadd.pas 30 Jan 2005 20:20:01 -0000
@@ -1339,6 +1339,12 @@
right:=caddnode.create(muln,right,
cordconstnode.create(tpointerdef(ld).pointertype.def.size,sinttype,true));
end;
+ if is_zero_based_array(ld) and
+ (tarraydef(ld).elementtype.def.size>1) then
+ begin
+ right:=caddnode.create(muln,right,
+ cordconstnode.create(tarraydef(ld).elementtype.def.size,sinttype,true));
+ end;
end
else
CGMessage3(type_e_operator_not_supported_for_types,node2opstr(nodetype),ld.typename,rd.typename);
Additional information:
Reporter: Alexey Barkovoy
EMail: clootie at ixbt dot com
Mantis conversion info:
- Mantis ID: 5580
- OS: All
- Version: 1.9.7
- Fixed in version: 1.9.7