Browse Source

+ allow packed file of ...
+ allow @ to declare a pointer in iso mode

git-svn-id: trunk@15679 -

florian 15 years ago
parent
commit
aa05cf8b1a
1 changed files with 12 additions and 1 deletions
  1. 12 1
      compiler/ptype.pas

+ 12 - 1
compiler/ptype.pas

@@ -943,6 +943,8 @@ implementation
                   array_dec(bitpacking)
                   array_dec(bitpacking)
                 else if token=_SET then
                 else if token=_SET then
                   set_dec
                   set_dec
+                else if token=_FILE then
+                  single_type(def,false,true)
                 else
                 else
                   begin
                   begin
                     oldpackrecords:=current_settings.packrecords;
                     oldpackrecords:=current_settings.packrecords;
@@ -1086,7 +1088,16 @@ implementation
                   end;
                   end;
               end;
               end;
             else
             else
-              expr_type;
+              if (token=_KLAMMERAFFE) and (m_iso in current_settings.modeswitches) then
+                begin
+                  consume(_KLAMMERAFFE);
+                  single_type(tt2,(block_type=bt_type),false);
+                  def:=tpointerdef.create(tt2);
+                  if tt2.typ=forwarddef then
+                    current_module.checkforwarddefs.add(def);
+                end
+              else
+                expr_type;
          end;
          end;
 
 
          if def=nil then
          if def=nil then