[Bug fortran/27715] Extented ASCII characters lead to wrong "CASE" selection

tkoenig at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sun May 28 16:10:00 GMT 2006



------- Comment #4 from tkoenig at gcc dot gnu dot org  2006-05-28 16:10 -------
(In reply to comment #3)
> Created an attachment (id=11525)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11525&action=view) [edit]
> Proposed patch
> 
> I'm tempted to propose the attached patch. It makes the front-end ultimately
> use unsigned chars to do the comparison, and also removes the use of the
> reverse ASCII collating table for this, because I don't understand how it is
> supposed to be useful :)

What about using

    struct
    {
      int length;
      unsigned char *string;
    }
    character;

in gfc_expr?  There would be a few fallout issues in
other places (I assume some "char *" pointers would have
to become "unsigned char*"), but it would be much cleaner overall.

As far as the collating sequence goes... should we eventually
support locales for sorting etc.?  If so, we should leave the
code in.

in gfc


-- 


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



More information about the Gcc-bugs mailing list