The condition 
if ((1+*ps)=='z') .....
not have the same behavior of
if ((1+*ps)=='b') .....

In the very simple attached file, you can reproduce it.
for to reproduce, you will change 2 rows:
1) row 38 with row 37
2) row 30 with row 29

There is also a log file, so you can see how i compile it.

Other info:
$ lsb_release -rd
Description:    Ubuntu 9.04
Release:        9.04


-- 
           Summary: g++ : char not find by pointer
           Product: gcc
           Version: 4.3.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: lxcc dot it dot gg at email dot it


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41319

Reply via email to