--- Comment #17 from jason at redhat dot com 2006-07-17 15:10 ---
Subject: Re: [4.0/4.1/4.2 regression] ICE in cp_expr_size
with volatile and call to static
Agreed; if we try to explicitly force a load of a volatile non-POD we
should call force_rvalue on it.
Jason
--
--- Comment #16 from mmitchel at gcc dot gnu dot org 2006-07-17 03:17
---
Contrived, or not, what should we do?
I stand by my position that the middle end should not try to load a
TREE_ADDRESSABLE type from memory in this way.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26577
--- Comment #15 from jason at gcc dot gnu dot org 2006-07-05 00:46 ---
(In reply to comment #14)
Marks's testcase from comment #6 still ICEs.
True, but it's a contrived testcase; I doubt anyone deliberately tries to force
a load of a non-POD object for its own sake.
--
--- Comment #14 from reichelt at gcc dot gnu dot org 2006-07-03 18:28
---
Marks's testcase from comment #6 still ICEs.
--
reichelt at gcc dot gnu dot org changed:
What|Removed |Added
--- Comment #9 from jason at gcc dot gnu dot org 2006-06-30 19:49 ---
Actually, this is a frontend issue: we shouldn't be asking for the access in
the first place. Patch soon.
--
jason at gcc dot gnu dot org changed:
What|Removed |Added
--- Comment #10 from jason at gcc dot gnu dot org 2006-06-30 20:48 ---
Subject: Bug 26577
Author: jason
Date: Fri Jun 30 20:48:42 2006
New Revision: 115105
URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=115105
Log:
PR c++/26577
* call.c (build_new_method_call):
--- Comment #11 from jason at gcc dot gnu dot org 2006-06-30 21:23 ---
Subject: Bug 26577
Author: jason
Date: Fri Jun 30 21:23:45 2006
New Revision: 115106
URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=115106
Log:
PR c++/26577
* call.c (build_new_method_call):
--- Comment #12 from jason at gcc dot gnu dot org 2006-06-30 21:25 ---
Subject: Bug 26577
Author: jason
Date: Fri Jun 30 21:25:21 2006
New Revision: 115107
URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=115107
Log:
PR c++/26577
* call.c (build_new_method_call):
--- Comment #13 from pinskia at gcc dot gnu dot org 2006-06-30 22:39
---
Fixed.
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
--- Comment #8 from mmitchel at gcc dot gnu dot org 2006-06-14 02:16
---
Diego --
Your last comment was cut off.
However, no, COMPLETE_TYPE_P does not imply that we know the size of the type,
and it can't ever imply that, in C++. For a type with virtual bases, we don't
know what
--- Comment #7 from dnovillo at redhat dot com 2006-06-12 12:12 ---
Subject: Re: [4.0/4.1/4.2 regression] ICE in cp_expr_size
with volatile and call to static
mmitchel at gcc dot gnu dot org wrote on 06/05/06 18:37:
Diego, what say you?
Shouldn't COMPLETE_TYPE_P imply that we can
--- Comment #6 from mmitchel at gcc dot gnu dot org 2006-06-05 22:37
---
An even smaller test case is:
==
struct A
{
A(const A);
A operator=(const A);
void baz() volatile;
};
void A::baz() volatile
{
*this;
}
==
The problem is that the middle-end is creating a copy of an
--
mmitchel at gcc dot gnu dot org changed:
What|Removed |Added
Priority|P3 |P1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26577
--
mmitchel at gcc dot gnu dot org changed:
What|Removed |Added
Target Milestone|4.0.3 |4.0.4
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26577
--- Comment #5 from reichelt at gcc dot gnu dot org 2006-03-07 12:26
---
*** Bug 26592 has been marked as a duplicate of this bug. ***
--
reichelt at gcc dot gnu dot org changed:
What|Removed |Added
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-03-06 12:42 ---
Reduced testcase which shows the real issue:
struct A
{
A(const A);
A operator=(const A);
static void bar();
void baz() volatile;
};
void A::baz() volatile
{
bar();
}
--
pinskia at gcc dot
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-03-06 12:45 ---
Related to PR 23167.
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
--- Comment #4 from pinskia at gcc dot gnu dot org 2006-03-06 12:47 ---
(In reply to comment #3)
Related to PR 23167.
One more comment about this, the fix for that PR moved the ICE from
create_tmp_var to cp_expr_size.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26577
18 matches
Mail list logo