diff options
author | marco <marco@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2016-05-30 09:28:56 +0000 |
---|---|---|
committer | marco <marco@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2016-05-30 09:28:56 +0000 |
commit | 35935a4e0648c939f2f9a97681cd030006108850 (patch) | |
tree | f776b84ff1b0fde3cb6b1ae927c3497984bb528f | |
parent | 733a51d7591808cf78b63d4730396f7235cc3216 (diff) | |
download | fpc-35935a4e0648c939f2f9a97681cd030006108850.tar.gz |
* patch from Sven equal to r31911 backported to 3.0.x
git-svn-id: http://svn.freepascal.org/svn/fpc/branches/fixes_3_0@33856 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r-- | compiler/ncgvmt.pas | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/compiler/ncgvmt.pas b/compiler/ncgvmt.pas index c02773a49e..f183da0b77 100644 --- a/compiler/ncgvmt.pas +++ b/compiler/ncgvmt.pas @@ -982,14 +982,16 @@ implementation for i:=0 to st.DefList.Count-1 do begin def:=tdef(st.DefList[i]); + { skip generics and generic constraints } + if [df_generic,df_genconstraint]*def.defoptions<>[] then + continue; case def.typ of recorddef : do_write_persistent_type_info(trecorddef(def).symtable,is_global); objectdef : begin - { Skip generics and forward defs } - if ([df_generic,df_genconstraint]*def.defoptions<>[]) or - (oo_is_forward in tobjectdef(def).objectoptions) then + { Skip forward defs } + if (oo_is_forward in tobjectdef(def).objectoptions) then continue; do_write_persistent_type_info(tobjectdef(def).symtable,is_global); { Write also VMT if not done yet } |