This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/47140] [4.6 Regression] error: conversion of register to a different size
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sat, 1 Jan 2011 14:33:43 +0000
- Subject: [Bug tree-optimization/47140] [4.6 Regression] error: conversion of register to a different size
- Auto-submitted: auto-generated
- References: <bug-47140-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47140
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Known to work| |4.5.2
Keywords| |ice-on-valid-code
Last reconfirmed| |2011.01.01 14:33:23
CC| |jakub at gcc dot gnu.org,
| |rguenth at gcc dot gnu.org
Ever Confirmed|0 |1
Summary|error: conversion of |[4.6 Regression] error:
|register to a different |conversion of register to a
|size |different size
Target Milestone|--- |4.6.0
Known to fail| |4.6.0
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-01-01 14:33:23 UTC ---
Caused by http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=162943
Smaller testcase:
static int
foo (int x, short y)
{
return y == 0 ? x : x + y;
}
static unsigned short
bar (unsigned short x, unsigned char y)
{
return x - y;
}
int w;
int baz (void);
int
test (void)
{
for (;;)
w = foo ((unsigned char) (1 + baz ()) >= bar (0, 1), 0);
}