src/Pure/sign.ML
changeset 26978 fd4b4ecf935e
parent 26939 1035c89b4c02
child 27195 bbf4cbc69243
equal deleted inserted replaced
26977:e736139b553d 26978:fd4b4ecf935e
   620         val T = (prepT raw_T handle TYPE (msg, _, _) => error msg) handle ERROR msg =>
   620         val T = (prepT raw_T handle TYPE (msg, _, _) => error msg) handle ERROR msg =>
   621           cat_error msg ("in declaration of constant " ^ quote c);
   621           cat_error msg ("in declaration of constant " ^ quote c);
   622         val T' = Logic.varifyT T;
   622         val T' = Logic.varifyT T;
   623       in ((c, T'), (c', T', mx), Const (full_c, T)) end;
   623       in ((c, T'), (c', T', mx), Const (full_c, T)) end;
   624     val args = map prep raw_args;
   624     val args = map prep raw_args;
       
   625     val tags' = tags |> AList.update (op =) (Markup.theory_nameN, Context.theory_name thy);
   625   in
   626   in
   626     thy
   627     thy
   627     |> map_consts (fold (Consts.declare authentic (naming_of thy) tags o #1) args)
   628     |> map_consts (fold (Consts.declare authentic (naming_of thy) tags' o #1) args)
   628     |> add_syntax_i (map #2 args)
   629     |> add_syntax_i (map #2 args)
   629     |> pair (map #3 args)
   630     |> pair (map #3 args)
   630   end;
   631   end;
   631 
   632 
   632 in
   633 in