As many will be aware, there is a syntactic ambiguity in the SQL
standard regarding the keyword UNBOUNDED. Since UNBOUNDED is a
non-reserved word, it could be the name of a function parameter and be
used as an expression. There is a grammar hack to resolve such cases as
the keyword.
I brought this issue to the SQL standard working group, and a fix has
been agreed. (Since long-standing syntax obviously can't be changed,
the fix is basically just an additional rule saying, "if you see this,
it means the keyword".) While working on that, I wrote a few test cases
to explore this and check how PostgreSQL actually handles this. I
figure these test cases are worth committing so that we have a record of
this and future grammar refactorings can maintain the behavior.