src/Pure/Isar/typedecl.ML
changeset 38831 4933a3dfd745
parent 38757 2b3e054ae6fc
child 42360 da8817d01e7c
equal deleted inserted replaced
38830:51efa72555bb 38831:4933a3dfd745
   100   let
   100   let
   101     val rhs = ProofContext.read_typ_syntax (ctxt |> ProofContext.set_defsort []) raw_rhs;
   101     val rhs = ProofContext.read_typ_syntax (ctxt |> ProofContext.set_defsort []) raw_rhs;
   102     val ignored = Term.fold_atyps_sorts (fn (_, []) => I | (T, _) => insert (op =) T) rhs [];
   102     val ignored = Term.fold_atyps_sorts (fn (_, []) => I | (T, _) => insert (op =) T) rhs [];
   103     val _ =
   103     val _ =
   104       if null ignored then ()
   104       if null ignored then ()
   105       else warning ("Ignoring sort constraints in type variables(s): " ^
   105       else Context_Position.if_visible ctxt warning
   106         commas_quote (map (Syntax.string_of_typ ctxt) (rev ignored)) ^
   106         ("Ignoring sort constraints in type variables(s): " ^
   107         "\nin type abbreviation " ^ quote (Binding.str_of b));
   107           commas_quote (map (Syntax.string_of_typ ctxt) (rev ignored)) ^
       
   108           "\nin type abbreviation " ^ quote (Binding.str_of b));
   108   in rhs end;
   109   in rhs end;
   109 
   110 
   110 in
   111 in
   111 
   112 
   112 val abbrev = gen_abbrev (K ProofContext.cert_typ_syntax);
   113 val abbrev = gen_abbrev (K ProofContext.cert_typ_syntax);