浏览代码

* allow passing records to C varargs (also allowed by C)

git-svn-id: trunk@13595 -
Jonas Maebe 16 年之前
父节点
当前提交
106c0673c0
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      compiler/ncnv.pas

+ 4 - 0
compiler/ncnv.pas

@@ -612,6 +612,10 @@ implementation
             variantdef:
             variantdef:
               if iscvarargs then
               if iscvarargs then
                 CGMessagePos1(p.fileinfo,type_e_wrong_type_in_array_constructor,p.resultdef.typename);
                 CGMessagePos1(p.fileinfo,type_e_wrong_type_in_array_constructor,p.resultdef.typename);
+            { maybe warn in case it's not using "packrecords c"? }
+            recorddef:
+              if not iscvarargs then
+                CGMessagePos1(p.fileinfo,type_e_wrong_type_in_array_constructor,p.resultdef.typename);
             pointerdef:
             pointerdef:
               ;
               ;
             classrefdef:
             classrefdef: