* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
@ 2005-09-09 18:03 ` pinskia at gcc dot gnu dot org
2005-09-09 18:05 ` pinskia at gcc dot gnu dot org
` (9 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-09 18:03 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |pinskia at gcc dot gnu dot
| |org
Target Milestone|--- |4.1.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
2005-09-09 18:03 ` [Bug c++/23799] " pinskia at gcc dot gnu dot org
@ 2005-09-09 18:05 ` pinskia at gcc dot gnu dot org
2005-09-09 18:51 ` schwab at suse dot de
` (8 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-09 18:05 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-09 18:05 -------
Note this is a new testcase for 4.1. Just to double check, did you try compiling it with 4.0?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
2005-09-09 18:03 ` [Bug c++/23799] " pinskia at gcc dot gnu dot org
2005-09-09 18:05 ` pinskia at gcc dot gnu dot org
@ 2005-09-09 18:51 ` schwab at suse dot de
2005-09-09 20:19 ` jsm28 at gcc dot gnu dot org
` (7 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: schwab at suse dot de @ 2005-09-09 18:51 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From schwab at suse dot de 2005-09-09 18:51 -------
Sure I did.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
` (2 preceding siblings ...)
2005-09-09 18:51 ` schwab at suse dot de
@ 2005-09-09 20:19 ` jsm28 at gcc dot gnu dot org
2005-09-10 10:19 ` schwab at suse dot de
` (6 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2005-09-09 20:19 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From jsm28 at gcc dot gnu dot org 2005-09-09 20:19 -------
Also appears on ia64-hp-hpux11.23 (-mlp64 only).
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |jsm28 at gcc dot gnu dot org
GCC target triplet|ia64-suse-linux |ia64-*-*
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
` (3 preceding siblings ...)
2005-09-09 20:19 ` jsm28 at gcc dot gnu dot org
@ 2005-09-10 10:19 ` schwab at suse dot de
2005-09-14 14:32 ` pinskia at gcc dot gnu dot org
` (5 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: schwab at suse dot de @ 2005-09-10 10:19 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From schwab at suse dot de 2005-09-10 10:19 -------
Also fails on x86-64, according to
<http://gcc.gnu.org/ml/gcc-testresults/2005-09/msg00458.html>. All 64-bit
targets appear to be affected.
--
What |Removed |Added
----------------------------------------------------------------------------
GCC target triplet|ia64-*-* |*64-*-*
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
` (4 preceding siblings ...)
2005-09-10 10:19 ` schwab at suse dot de
@ 2005-09-14 14:32 ` pinskia at gcc dot gnu dot org
2005-09-14 17:45 ` pinskia at gcc dot gnu dot org
` (4 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-14 14:32 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-14 14:32 -------
Note the testcase is now called struct3.C.
Confirmed.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Last reconfirmed|0000-00-00 00:00:00 |2005-09-14 14:32:23
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
` (5 preceding siblings ...)
2005-09-14 14:32 ` pinskia at gcc dot gnu dot org
@ 2005-09-14 17:45 ` pinskia at gcc dot gnu dot org
2005-09-18 10:37 ` steven at gcc dot gnu dot org
` (3 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-14 17:45 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-14 17:45 -------
Caused by:
http://gcc.gnu.org/ml/gcc-cvs/2005-09/msg00040.html
Reduced testcase:
struct Track {
char soundName[15];
};
int foobar = ((long) (& ((Track *) 42)->soundName[0])) - 42;
--
What |Removed |Added
----------------------------------------------------------------------------
GCC target triplet|*64-*-* |64bit targets
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
` (6 preceding siblings ...)
2005-09-14 17:45 ` pinskia at gcc dot gnu dot org
@ 2005-09-18 10:37 ` steven at gcc dot gnu dot org
2005-09-19 19:57 ` dj at redhat dot com
` (2 subsequent siblings)
10 siblings, 0 replies; 17+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-09-18 10:37 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From steven at gcc dot gnu dot org 2005-09-18 10:37 -------
DJ, apparently you caused this one.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |dj at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
` (7 preceding siblings ...)
2005-09-18 10:37 ` steven at gcc dot gnu dot org
@ 2005-09-19 19:57 ` dj at redhat dot com
2005-09-23 5:24 ` amodra at bigpond dot net dot au
2005-09-23 17:22 ` dj at redhat dot com
10 siblings, 0 replies; 17+ messages in thread
From: dj at redhat dot com @ 2005-09-19 19:57 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dj at redhat dot com 2005-09-19 19:57 -------
Subject: Re: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
> DJ, apparently you caused this one.
Yup, and I had reservations about that portion of the patch at the
time, too, which have turned out to be justified (the reservations,
not the patch).
I think the best option at this point is to just take the check out
(leaving in the other part of the patch, which is needed for m32c).
The code will still be buggy if the no-op converts to a larger size,
though, because it doesn't take endianness into account when padding.
I'm rather surprised that the test case works for sizeof(long) >
sizeof(int), I'd expect the bytes to be truncated in amusing ways.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
` (8 preceding siblings ...)
2005-09-19 19:57 ` dj at redhat dot com
@ 2005-09-23 5:24 ` amodra at bigpond dot net dot au
2005-09-23 17:22 ` dj at redhat dot com
10 siblings, 0 replies; 17+ messages in thread
From: amodra at bigpond dot net dot au @ 2005-09-23 5:24 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From amodra at bigpond dot net dot au 2005-09-23 05:24 -------
The failures on powerpc64-linux are due to a long (64-bit) to int (32-bit)
conversion. When such a conversion is the outermost one, as in this case, it
ought to be allowed. The assembler will (or should) handle big/little endian
issues and give an error on overflow.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug c++/23799] [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
2005-09-09 18:00 [Bug c++/23799] New: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer schwab at suse dot de
` (9 preceding siblings ...)
2005-09-23 5:24 ` amodra at bigpond dot net dot au
@ 2005-09-23 17:22 ` dj at redhat dot com
10 siblings, 0 replies; 17+ messages in thread
From: dj at redhat dot com @ 2005-09-23 17:22 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dj at redhat dot com 2005-09-23 17:22 -------
Subject: Re: [4.1 regression] ICE: no-op convert from 8 to 4 bytes in initializer
I recall that the opposite case is problematic; initializing a large
int from a smaller one, because gcc always zero pads at the end.
Perhaps a lt/gt comparison would be more appropriate?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23799
^ permalink raw reply [flat|nested] 17+ messages in thread