From e142953c6d2b796e833e441773acd51325a7ed77 Mon Sep 17 00:00:00 2001 From: florian Date: Wed, 19 Oct 2022 22:48:54 +0200 Subject: [PATCH] * make the hidden high parameter for short strings a byte for 8 bit CPUs --- compiler/pparautl.pas | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/compiler/pparautl.pas b/compiler/pparautl.pas index d3df0fbde5..5adf572fdd 100644 --- a/compiler/pparautl.pas +++ b/compiler/pparautl.pas @@ -415,7 +415,12 @@ implementation { needs high parameter ? } if paramanager.push_high_param(varspez,vardef,pd.proccalloption) then begin - hvs:=cparavarsym.create('$high'+name,paranr+1,vs_const,sizesinttype,[vo_is_high_para,vo_is_hidden_para]); +{$ifdef cpu8bitalu} + if is_shortstring(vardef) then + hvs:=cparavarsym.create('$high'+name,paranr+1,vs_const,aluuinttype,[vo_is_high_para,vo_is_hidden_para]) + else +{$endif cpu8bitalu} + hvs:=cparavarsym.create('$high'+name,paranr+1,vs_const,sizesinttype,[vo_is_high_para,vo_is_hidden_para]); hvs.symoptions:=[]; owner.insertsym(hvs); { don't place to register if it will be accessed from implicit finally block }