소스 검색

* avoid internal error in case of an illegal generic declaration

florian 2 년 전
부모
커밋
e77ec69de4
1개의 변경된 파일4개의 추가작업 그리고 1개의 파일을 삭제
  1. 4 1
      compiler/pdecl.pas

+ 4 - 1
compiler/pdecl.pas

@@ -1170,7 +1170,10 @@ implementation
 
            if isgeneric and (not(hdef.typ in [objectdef,recorddef,arraydef,procvardef])
                or is_objectpascal_helper(hdef)) then
-             message(parser_e_cant_create_generics_of_this_type);
+             begin
+               newtype.typedef:=generrordef;
+               message(parser_e_cant_create_generics_of_this_type);
+             end;
 
            { Stop recording a generic template }
            if assigned(generictypelist) then