Quellcode durchsuchen

* removed df_unique flag. It breaks code. For a good type=type <id>
a def copy is required

peter vor 23 Jahren
Ursprung
Commit
41f6e26675
3 geänderte Dateien mit 17 neuen und 11 gelöschten Zeilen
  1. 6 2
      compiler/defbase.pas
  2. 5 5
      compiler/pdecl.pas
  3. 6 4
      compiler/symconst.pas

+ 6 - 2
compiler/defbase.pas

@@ -1074,7 +1074,7 @@ implementation
 
          { both point to the same definition ? }
          if def1=def2 then
-           b:=not((df_unique in def1.defoptions) or (df_unique in def2.defoptions))
+           b:=true
          else
          { pointer with an equal definition are equal }
            if (def1.deftype=pointerdef) and (def2.deftype=pointerdef) then
@@ -2026,7 +2026,11 @@ implementation
 end.
 {
   $Log$
-  Revision 1.22  2002-10-10 16:07:57  florian
+  Revision 1.23  2002-10-20 15:34:16  peter
+    * removed df_unique flag. It breaks code. For a good type=type <id>
+      a def copy is required
+
+  Revision 1.22  2002/10/10 16:07:57  florian
     + several widestring/pwidechar related stuff added
 
   Revision 1.21  2002/10/09 21:01:41  florian

+ 5 - 5
compiler/pdecl.pas

@@ -462,10 +462,6 @@ implementation
             end;
            if assigned(tt.def) then
             begin
-              if unique then
-                include(tt.def.defoptions,df_unique)
-              else
-                exclude(tt.def.defoptions,df_unique);
               case tt.def.deftype of
                 pointerdef :
                   begin
@@ -628,7 +624,11 @@ implementation
 end.
 {
   $Log$
-  Revision 1.56  2002-10-19 15:09:25  peter
+  Revision 1.57  2002-10-20 15:34:16  peter
+    * removed df_unique flag. It breaks code. For a good type=type <id>
+      a def copy is required
+
+  Revision 1.56  2002/10/19 15:09:25  peter
     + tobjectdef.members_need_inittable that is used to generate only the
       inittable when it is really used. This saves a lot of useless calls
       to fpc_finalize when destroying classes

+ 6 - 4
compiler/symconst.pas

@@ -124,9 +124,7 @@ type
     { init data has been generated }
     df_has_inittable,
     { rtti data has been generated }
-    df_has_rttitable,
-    { unique type which is declared by <id> = type <another id>; }
-    df_unique
+    df_has_rttitable
   );
   tdefoptions=set of tdefoption;
 
@@ -339,7 +337,11 @@ implementation
 end.
 {
   $Log$
-  Revision 1.35  2002-10-06 12:25:05  florian
+  Revision 1.36  2002-10-20 15:34:16  peter
+    * removed df_unique flag. It breaks code. For a good type=type <id>
+      a def copy is required
+
+  Revision 1.35  2002/10/06 12:25:05  florian
     + proper support of type <id> = type <another id>;
 
   Revision 1.34  2002/08/19 19:36:44  peter