From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23013 invoked by alias); 10 Sep 2010 15:20:53 -0000 Received: (qmail 22899 invoked by uid 48); 10 Sep 2010 15:20:42 -0000 Date: Fri, 10 Sep 2010 15:20:00 -0000 Message-ID: <20100910152042.22898.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug fortran/45636] Failed to fold simple Fortran string In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "kargl at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-09/txt/msg01362.txt.bz2 ------- Comment #2 from kargl at gcc dot gnu dot org 2010-09-10 15:20 ------- The -fdump-tree-original for HJ's original code look like rcrdrd (character(kind=1)[1:4] & restrict vtyp, integer(kind=4) _vtyp) { static character(kind=1) dbl[1:1] = "D"; (MEM[(c_char * {ref-all})vtyp] = MEM[(c_char * {ref-all})&dbl];, (void *) vtyp;); __builtin_memset ((void *) vtyp + 1, 32, 3); } If I increase the length of DBL to 2, then the dump looks like rcrdrd (character(kind=1)[1:4] & restrict vtyp, integer(kind=4) _vtyp) { static character(kind=1) dbl[1:2] = "D "; __builtin_memmove ((void *) vtyp, (void *) &dbl, 2); __builtin_memset ((void *) vtyp + 2, 32, 2); } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45636