+ (match !level with
+ | -1 ->
+ (match CicNotationParser.parse_phrase istream with
+ | P.Print t ->
+ print_endline (CicNotationPp.pp_term t); flush stdout
+ | P.Notation (l1, associativity, precedence, l2) ->
+ prerr_endline "foo";
+ print_endline "Extending notation ..."; flush stdout;
+ ignore
+ (CicNotationParser.extend l1 ?precedence ?associativity
+ (fun env loc ->
+ prerr_endline "ENV";
+ prerr_endline (CicNotationPp.pp_env env);
+ CicNotationEnv.instantiate env l2));
+ CicNotationParser.print_l2_pattern ())
+ | 1 -> ignore (CicNotationParser.parse_syntax_pattern istream)
+ | 2 ->
+ let ast = CicNotationParser.parse_ast_pattern istream in
+ if ast = P.Sort `Prop then
+ prerr_endline "eureka"
+ else
+ prerr_endline ":-("
+ | 3 -> ignore (CicNotationParser.parse_interpretation istream)
+ | _ -> Arg.usage arg_spec usage; exit 1);