$ cat parser.mly
%token INT
%start <[> `Got_int]> main
%%
main: INT {`Got_int}

$ menhir parser.mly
File "parser.mly", line 2, characters 11-11:
Error: unexpected character(s).

If I make the type exact [`Got_int], it works fine. Is there any way to get around this? I need an open type.