From 79f43c22e9dec0cc055bc94a96e271421ee3a4e2 Mon Sep 17 00:00:00 2001 From: nickysn Date: Tue, 12 Mar 2013 18:04:38 +0000 Subject: [PATCH] * fixed passing of int64 constants as parameters git-svn-id: branches/i8086@23811 - --- compiler/i8086/cgcpu.pas | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/compiler/i8086/cgcpu.pas b/compiler/i8086/cgcpu.pas index af748ae660..9b8a5d2c6c 100644 --- a/compiler/i8086/cgcpu.pas +++ b/compiler/i8086/cgcpu.pas @@ -327,14 +327,20 @@ unit cgcpu; begin if tcgsize2size[cgpara.Size] <> 4 then internalerror(2013031101); - if tcgsize2size[cgpara.location^.size] <> 2 then - internalerror(2013031101); if cgpara.location^.Next = nil then - internalerror(2013031101); - if tcgsize2size[cgpara.location^.Next^.size] <> 2 then - internalerror(2013031101); - if cgpara.location^.Next^.Next <> nil then - internalerror(2013031101); + begin + if tcgsize2size[cgpara.location^.size] <> 4 then + internalerror(2013031101); + end + else + begin + if tcgsize2size[cgpara.location^.size] <> 2 then + internalerror(2013031101); + if tcgsize2size[cgpara.location^.Next^.size] <> 2 then + internalerror(2013031101); + if cgpara.location^.Next^.Next <> nil then + internalerror(2013031101); + end; if cgpara.alignment <> 4 then internalerror(2013031101);