Bug in parser?

Gerhard Dieringer <gerhard.dieringer@arcor.de>

From: Gerhard Dieringer <Gerhard.Dieringer@arcor.de>
To: Postgres Bugs <pgsql-bugs@postgresql.org>
Date: 2003-05-31T20:16:24Z
Lists: pgsql-bugs

============================================================================
                        POSTGRESQL BUG REPORT TEMPLATE
============================================================================


Your name		:	Gerhard Dieringer
Your email address	:	Gerhard.Dieringer@nexgo.de


System Configuration
---------------------
  Architecture (example: Intel Pentium)  	:Dual Intel Pentium II

  Operating System (example: Linux 2.0.26 ELF) 	: Linux 2.2.16

  PostgreSQL version (example: PostgreSQL-7.3.3):   PostgreSQL-7.3.3

  Compiler used (example:  gcc 2.95.2)		:   gcc-Version 3.3


Please enter a FULL description of your problem:
------------------------------------------------
Inconsistent results when calling '+' operator with text arguemts
The last 4 results (f.e. '1' + '2' -> 'c') are very strange.



Please describe a way to repeat the problem.   Please try to provide a
concise reproducible example, if at all possible: 
----------------------------------------------------------------------
select 1 + '2' as result;
 result 
--------
      3
(1 row)

select 1 + '2.3' as result;
psql:error.sql:2: ERROR:  pg_atoi: error in "2.3": can't parse ".3"
select 1.5 + '2' as result;
 result 
--------
    3.5
(1 row)

select 1.4 + '2.3' as result;
 result 
--------
    3.7
(1 row)

select '1' + '2' as result;
 result 
--------
 c
(1 row)

select '1' + '2.3' as result;
 result 
--------
 c
(1 row)

select '1.5' + '2' as result;
 result 
--------
 c
(1 row)

select '1.4' + '2.3' as result;
 result 
--------
 c
(1 row)





If you know how this problem might be fixed, list the solution below:
---------------------------------------------------------------------
Sorry :-((