浏览代码

* fixed writing of procvardef records (they're also written as tck_record)

git-svn-id: trunk@32298 -
Jonas Maebe 9 年之前
父节点
当前提交
1675c27e59
共有 1 个文件被更改,包括 4 次插入2 次删除
  1. 4 2
      compiler/llvm/agllvm.pas

+ 4 - 2
compiler/llvm/agllvm.pas

@@ -745,7 +745,8 @@ implementation
               begin
                 writer.AsmWrite(defstr);
                 writer.AsmWrite(' ');
-                if tabstractrecordsymtable(tabstractrecorddef(hp.def).symtable).usefieldalignment<>C_alignment then
+                if (hp.def.typ in [objectdef,recorddef]) and
+                   (tabstractrecordsymtable(tabstractrecorddef(hp.def).symtable).usefieldalignment<>C_alignment) then
                   writer.AsmWrite('<{')
                 else
                   writer.AsmWrite('{');
@@ -758,7 +759,8 @@ implementation
                       first:=false;
                     WriteTypedConstData(p);
                   end;
-                if tabstractrecordsymtable(tabstractrecorddef(hp.def).symtable).usefieldalignment<>C_alignment then
+                if (hp.def.typ in [recorddef,objectdef]) and
+                   (tabstractrecordsymtable(tabstractrecorddef(hp.def).symtable).usefieldalignment<>C_alignment) then
                   writer.AsmWrite('}>')
                 else
                   writer.AsmWrite('}');