* fix length calculation of winlike widestrings in Dwarf 3 (patch by

Martin Friebe, mantis #35566)

git-svn-id: trunk@43182 -
This commit is contained in:
Jonas Maebe 2019-10-13 09:31:08 +00:00
parent bdcda8660e
commit 3e11f1b2fe

View File

@ -4337,7 +4337,11 @@ implementation
{ yes -> length = 0 }
current_asmdata.asmlists[al_dwarf_info].concat(tai_const.create_8bit(ord(DW_OP_lit0)));
current_asmdata.asmlists[al_dwarf_info].concat(tai_const.create_8bit(ord(DW_OP_skip)));
current_asmdata.asmlists[al_dwarf_info].concat(tai_const.create_16bit_unaligned(3));
if upperopcodes=16 then
{ skip the extra deref_size argument and the division by two of the length }
current_asmdata.asmlists[al_dwarf_info].concat(tai_const.create_16bit_unaligned(6))
else
current_asmdata.asmlists[al_dwarf_info].concat(tai_const.create_16bit_unaligned(3));
{ no -> load length }
if upperopcodes=16 then
{ for Windows WideString the size is always a DWORD }