diff --git a/compiler/symbase.pas b/compiler/symbase.pas index 7333bc4606..94e5777694 100644 --- a/compiler/symbase.pas +++ b/compiler/symbase.pas @@ -284,6 +284,10 @@ implementation while assigned(st.defowner) do begin st:=st.defowner.owner; + { this can happen for specializations of routines that are not yet + owned cause they might be thrown away again } + if not assigned(st) then + break; { the flag is already set, so by definition it is set in the owning symtables as well } if option in st.tableoptions then