فهرست منبع

* fix check that filedef needs var para

peter 22 سال پیش
والد
کامیت
2c4df4364e
2فایلهای تغییر یافته به همراه13 افزوده شده و 7 حذف شده
  1. 4 6
      compiler/ncal.pas
  2. 9 1
      compiler/pdecsub.pas

+ 4 - 6
compiler/ncal.pas

@@ -733,11 +733,6 @@ type
                  CGMessage(type_e_strict_var_string_violation);
                end;
 
-             { File types are only allowed for var parameters }
-             if (paraitem.paratype.def.deftype=filedef) and
-                (paraitem.paratyp<>vs_var) then
-               CGMessage(cg_e_file_must_call_by_reference);
-
              { Handle formal parameters separate }
              if (paraitem.paratype.def.deftype=formaldef) then
                begin
@@ -2520,7 +2515,10 @@ begin
 end.
 {
   $Log$
-  Revision 1.183  2003-09-28 17:55:03  peter
+  Revision 1.184  2003-09-28 21:44:55  peter
+    * fix check that filedef needs var para
+
+  Revision 1.183  2003/09/28 17:55:03  peter
     * parent framepointer changed to hidden parameter
     * tloadparentfpnode added
 

+ 9 - 1
compiler/pdecsub.pas

@@ -476,6 +476,11 @@ implementation
              tt:=cformaltype;
            end;
 
+          { File types are only allowed for var parameters }
+          if (tt.def.deftype=filedef) and
+             (varspez<>vs_var) then
+            CGMessage(cg_e_file_must_call_by_reference);
+
           vs:=tvarsym(sc.first);
           while assigned(vs) do
            begin
@@ -2141,7 +2146,10 @@ const
 end.
 {
   $Log$
-  Revision 1.138  2003-09-28 17:55:04  peter
+  Revision 1.139  2003-09-28 21:44:55  peter
+    * fix check that filedef needs var para
+
+  Revision 1.138  2003/09/28 17:55:04  peter
     * parent framepointer changed to hidden parameter
     * tloadparentfpnode added