* fixed skipping if intermediate fields in llvm shadow symtable

git-svn-id: trunk@31640 -
This commit is contained in:
Jonas Maebe 2015-09-12 23:32:56 +00:00
parent 3c6aa91a96
commit 5a50d05e50

View File

@ -1956,7 +1956,7 @@ implementation
{ find the last shadowfield whose offset <= the current field's offset }
while (tllvmshadowsymtableentry(symdeflist[shadowindex]).fieldoffset<tfieldvarsym(equivst.symlist[i]).fieldoffset) and
(shadowindex<symdeflist.count-1) and
(tllvmshadowsymtableentry(symdeflist[shadowindex+1]).fieldoffset>=tfieldvarsym(equivst.symlist[i]).fieldoffset) do
(tllvmshadowsymtableentry(symdeflist[shadowindex+1]).fieldoffset<=tfieldvarsym(equivst.symlist[i]).fieldoffset) do
inc(shadowindex);
{ set the field number and potential offset from that field (in case }
{ of overlapping variants) }