Răsfoiți Sursa

* ensure that generic symbols are not tried to be exported

git-svn-id: trunk@43541 -
svenbarth 5 ani în urmă
părinte
comite
06fc84037c
1 a modificat fișierele cu 2 adăugiri și 1 ștergeri
  1. 2 1
      compiler/pkgutil.pas

+ 2 - 1
compiler/pkgutil.pas

@@ -82,6 +82,7 @@ implementation
         begin
           pd:=tprocdef(tprocsym(sym).procdeflist[i]);
           if not(pd.proccalloption in [pocall_internproc]) and
+              not (df_generic in pd.defoptions) and
               ((pd.procoptions*[po_external])=[]) and
               (
                 (symtable.symtabletype in [globalsymtable,recordsymtable,objectsymtable]) or
@@ -167,7 +168,7 @@ implementation
   procedure export_typedef(def:tdef;symtable:tsymtable;global:boolean);
     begin
       if not (global or is_class(def)) or
-          (df_internal in def.defoptions) or
+          ([df_internal,df_generic]*def.defoptions<>[]) or
           { happens with type renaming declarations ("abc = xyz") }
           (def.owner<>symtable) then
         exit;