You should set `$constantValue` because of non strict comparison.

Also the work of detecting the ordinal number could be done on `getOrdinal()` to make instantiation a fast as possible