In the IDB spec the definition of a valid key path is built around:
... plus dotted combinations of identifiers and arrays thereof.
IdentifierName but not ReservedWord
And defines ReservedWord as:
Keyword :: one of
break do instanceof typeof case else new var ...
This would appear to preclude key paths such as:
Neither FF nor Chrome appear to reject such key paths.
I suggest the IDB spec be updated to refer specifically to the IdentifierName production in ECMA-262.
Opera also allows such keypaths. Looking at the implementation it calls the IdentifierName checker from our ecmascript module. Guess that's what everyone else did as well :P
I proactively changed keypath tests to also test that: