This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/27529] Does not fold (char *)(size_t)char_ptr or (size_t)(char *)size_t_var



------- Comment #2 from rguenth at gcc dot gnu dot org  2006-05-11 08:30 -------
Subject: Bug 27529

Author: rguenth
Date: Thu May 11 08:29:40 2006
New Revision: 113692

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113692
Log:
2006-05-11  Richard Guenther  <rguenther@suse.de>

        PR middle-end/27529
        * fold-const.c (fold_unary): Handle intermediate conversion
        to a pointer type like intermediate conversion to an integer
        type in folding of (T1)(T2)var to var.
        Match the code to the comment in the final conversion for
        (T1)(T2)var to (T1)var regarding to type precision.  Rather
        than disallow T1 being of pointer type, assert that both T1
        and var are of pointer type or not.  Make sure not to fall
        over the frontends lazyness wrt array to pointer decay though.

        * gcc.dg/tree-ssa/foldcast-1.c: New testcase.

Added:
    trunk/gcc/testsuite/gcc.dg/tree-ssa/foldcast-1.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/fold-const.c
    trunk/gcc/testsuite/ChangeLog


-- 


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]