> -----Original Message-----
> From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
>
> "Hiroshi Inoue" <Inoue@tpf.co.jp> writes:
> > The following phenomenon was reported to pgsql-jp(ML in Japan).
>
> > rest=# select -1234567890.1234567;
> > ERROR: Unable to convert left operator '-' from type 'unknown'
>
> I've committed fixes that make the parser treat numeric literals
> the same no matter how many digits they have. With current sources,
>
> regression=# select -1234567890.1234567;
> ?column?
> -------------------
> -1234567890.12346
> (1 row)
>
> which is probably still not what you want,
Hmm,this may be worse than before.
INSERT/UPDATE statements would lose precision without
telling any error/warnings.
> because the default
> type for a non-integer literal is float8 in the absence of any
> context to clue the system otherwise, so you lose precision.
> You can do
>
Shouldn't decimal constants be distinguished from real constants ?
For example, decimal --> NCONST -> T_Numreic Value ->
Const node of type NUMERICOID ....
Comments ?
Regards.
Hiroshi Inoue
Inoue@tpf.co.jp