public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/36408]  New: [4.3/4.4 regression] ICE with statement expression in template
@ 2008-06-01 10:46 reichelt at gcc dot gnu dot org
  2008-06-01 10:47 ` [Bug c++/36408] " reichelt at gcc dot gnu dot org
                   ` (22 more replies)
  0 siblings, 23 replies; 24+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2008-06-01 10:46 UTC (permalink / raw)
  To: gcc-bugs

The following invalid code snippet triggers an ICE since GCC 4.3.0:

====================================================
template<int> void foo()
{
  int i = ({ });
}
====================================================

bug.cc: In function 'void foo()':
bug.cc:3: internal compiler error: Segmentation fault
Please submit a full bug report, [etc.]

Without the template we get a suitable error message:
bug.cc: In function 'void foo()':
bug.cc:3: error: void value not ignored as it ought to be

The code was wrongly accepted before GCC 4.3.0.


-- 
           Summary: [4.3/4.4 regression] ICE with statement expression in
                    template
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code, monitored
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: reichelt at gcc dot gnu dot org


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
@ 2008-06-01 10:47 ` reichelt at gcc dot gnu dot org
  2008-06-06 15:05 ` rguenth at gcc dot gnu dot org
                   ` (21 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2008-06-01 10:47 UTC (permalink / raw)
  To: gcc-bugs



-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.3.1


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
  2008-06-01 10:47 ` [Bug c++/36408] " reichelt at gcc dot gnu dot org
@ 2008-06-06 15:05 ` rguenth at gcc dot gnu dot org
  2008-06-06 20:30 ` rguenth at gcc dot gnu dot org
                   ` (20 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-06-06 15:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from rguenth at gcc dot gnu dot org  2008-06-06 14:59 -------
4.3.1 is being released, adjusting target milestone.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.1                       |4.3.2


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
  2008-06-01 10:47 ` [Bug c++/36408] " reichelt at gcc dot gnu dot org
  2008-06-06 15:05 ` rguenth at gcc dot gnu dot org
@ 2008-06-06 20:30 ` rguenth at gcc dot gnu dot org
  2008-06-11  6:32 ` jakub at gcc dot gnu dot org
                   ` (19 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-06-06 20:30 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2008-06-06 20:30 ` rguenth at gcc dot gnu dot org
@ 2008-06-11  6:32 ` jakub at gcc dot gnu dot org
  2008-06-11  6:49 ` jakub at gcc dot gnu dot org
                   ` (18 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: jakub at gcc dot gnu dot org @ 2008-06-11  6:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from jakub at gcc dot gnu dot org  2008-06-11 06:31 -------
Subject: Bug 36408

Author: jakub
Date: Wed Jun 11 06:30:55 2008
New Revision: 136651

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=136651
Log:
        PR c++/36408
        * semantics.c (stmt_expr_value_expr): Don't crash on empty
        STATEMENT_LIST.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/semantics.c


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2008-06-11  6:32 ` jakub at gcc dot gnu dot org
@ 2008-06-11  6:49 ` jakub at gcc dot gnu dot org
  2008-06-12 10:14 ` jakub at gcc dot gnu dot org
                   ` (17 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: jakub at gcc dot gnu dot org @ 2008-06-11  6:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from jakub at gcc dot gnu dot org  2008-06-11 06:48 -------
Subject: Bug 36408

Author: jakub
Date: Wed Jun 11 06:47:36 2008
New Revision: 136652

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=136652
Log:
        PR c++/36408
        * semantics.c (stmt_expr_value_expr): Don't crash on empty
        STATEMENT_LIST.

Modified:
    branches/gcc-4_3-branch/gcc/cp/ChangeLog
    branches/gcc-4_3-branch/gcc/cp/semantics.c


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2008-06-11  6:49 ` jakub at gcc dot gnu dot org
@ 2008-06-12 10:14 ` jakub at gcc dot gnu dot org
  2008-08-01  8:56 ` dodji at gcc dot gnu dot org
                   ` (16 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: jakub at gcc dot gnu dot org @ 2008-06-12 10:14 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from jakub at gcc dot gnu dot org  2008-06-12 10:13 -------
Only partly fixed so far - we don't ICE anymore, but no warning is generated.
See http://gcc.gnu.org/ml/gcc-patches/2008-06/msg00474.html
Doug, any ideas how to differentiate between pack expansion resulting in no
tsubsted code and statement expressions containing no statements (possibly
nested)?


-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dgregor at gcc dot gnu dot
                   |                            |org


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2008-08-01  8:56 ` dodji at gcc dot gnu dot org
@ 2008-08-01  8:56 ` dodji at gcc dot gnu dot org
  2008-08-01  9:09 ` paolo dot carlini at oracle dot com
                   ` (14 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2008-08-01  8:56 UTC (permalink / raw)
  To: gcc-bugs



-- 

dodji at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |dodji at gcc dot gnu dot org
                   |dot org                     |
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2008-08-01 08:55:06
               date|                            |


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2008-06-12 10:14 ` jakub at gcc dot gnu dot org
@ 2008-08-01  8:56 ` dodji at gcc dot gnu dot org
  2008-08-01  8:56 ` dodji at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2008-08-01  8:56 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from dodji at gcc dot gnu dot org  2008-08-01 08:54 -------
Created an attachment (id=15988)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15988&action=view)
first fix attempt.

This patch fixes the problem for me on gcc-4_3-branch.

Regtested for x86_64 on gcc-4_3-branch. I will recompile my trunk right away
and test the patch there.
If the patch looks okayish to you guys and works on trunk for me I can send it
to gcc-patch for review.

Comments welcome.

Thanks.


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2008-08-01  8:56 ` dodji at gcc dot gnu dot org
@ 2008-08-01  9:09 ` paolo dot carlini at oracle dot com
  2008-08-01  9:34 ` dodji at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: paolo dot carlini at oracle dot com @ 2008-08-01  9:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from paolo dot carlini at oracle dot com  2008-08-01 09:07 -------
Typo in dg-options: you mean c++0x


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2008-08-01  9:09 ` paolo dot carlini at oracle dot com
@ 2008-08-01  9:34 ` dodji at gcc dot gnu dot org
  2008-08-01 11:57 ` dgregor at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2008-08-01  9:34 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from dodji at gcc dot gnu dot org  2008-08-01 09:33 -------
Created an attachment (id=15989)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15989&action=view)
fixed a typo.

Woops, thanks Paolo. I have Updated the patch.


-- 

dodji at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #15988|0                           |1
        is obsolete|                            |


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2008-08-01  9:34 ` dodji at gcc dot gnu dot org
@ 2008-08-01 11:57 ` dgregor at gcc dot gnu dot org
  2008-08-01 13:33 ` dodji at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2008-08-01 11:57 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from dgregor at gcc dot gnu dot org  2008-08-01 11:55 -------
Thanks Jakub, Dodji for working on this. Some comments:

Some nits:

  - the error message we give in this case is pretty poor. Here we have an
empty initializer, but the error message we get back is "void value not ignored
as it ought to be", which really doesn't tell us much of anything about the
problem. The real issue here is that the statement expression has no return
value, so we should say as such. This same problem can occur with non-empty
statement expressions whose last statement does not produce a value, right? We
should test this case, too.

  - since the statement-expression is obviously empty, can we produce this
error message at template definition time, rather than waiting until
instantiation time? (If the answer isn't a quick "yes", don't worry about it;
I'll eventually be going through the initialization bits to check more of them
at template definition time anyway.)

  - is_pack_expansion_node_p is a pretty general name for a function that is
specific to initializer lists (in general, a TREE_LIST with a pack expansion in
its TREE_VALUE isn't necessarily an "expansion node"). I suggest calling this
"initializer_is_pack_expansion_p".

  - Please put some braces inside the if (init && !t) block. Omitting the
braces for "then" and "else" is okay for small one-liner bodies, but shouldn't
be done when there are if-elses nested inside.

  - parse/empty-statement.C is a strange place to put this check, which deals
with template instantiation. Perhaps call it template/empty-init-statement.C?

  - In the top of the testcase, "PR c++/P36408" should be "PR c++/36408"


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2008-08-01 11:57 ` dgregor at gcc dot gnu dot org
@ 2008-08-01 13:33 ` dodji at gcc dot gnu dot org
  2008-08-01 14:07 ` dgregor at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2008-08-01 13:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from dodji at gcc dot gnu dot org  2008-08-01 13:32 -------
Created an attachment (id=15991)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15991&action=view)
updated patch

>  - the error message we give in this case is pretty poor. Here we have an
>empty initializer, but the error message we get back is "void value not ignored
>as it ought to be", which really doesn't tell us much of anything about the
>problem.

I agree. Though I think addressing that should be best done in another bug
that we can open straight away when we close this one, if you agree.

>The real issue here is that the statement expression has no return
>value, so we should say as such. This same problem can occur with non-empty
>statement expressions whose last statement does not produce a value, right?
>We
>should test this case, too.

I think the problem (g++ not issuing any warning)
is due to the tsubsted initializer yielding NULL.
An expression made of a statement list which last statement
does not return any value whould be tsubsted to a statement list
of type VOID_TYPE, I believe.

For instance the current g++ 4.3.0 issues the warning for the
following code snippet:
----
void foo ();
void bar ();

void
func ()
{
  int y = 0;
  int i = ({ foo (); if (y) bar (); });
}
----
/home/dodji/devel/src/test.cc: In function 'void func()':
/home/dodji/devel/src/test.cc:8: error: void value not ignored as it ought to
be

>
>  - since the statement-expression is obviously empty, can we produce this
>error message at template definition time, rather than waiting until
>instantiation time? (If the answer isn't a quick "yes", don't worry about it;
>I'll eventually be going through the initialization bits to check more of them
>at template definition time anyway.)

Yes, that would be handy. Though here again, I think we should be opening
another bug to track that.

>
>  - is_pack_expansion_node_p is a pretty general name for a function that is
>specific to initializer lists (in general, a TREE_LIST with a pack expansion in
>its TREE_VALUE isn't necessarily an "expansion node"). I suggest calling this
>"initializer_is_pack_expansion_p".
>

Right. This updated patch addresses that.

>  - Please put some braces inside the if (init && !t) block. Omitting the
>braces for "then" and "else" is okay for small one-liner bodies, but shouldn't
>be done when there are if-elses nested inside.

Fixed in this udpated patch.

>
>  - parse/empty-statement.C is a strange place to put this check, which deals
>with template instantiation. Perhaps call it template/empty-init-statement.C?

Yup. Fixed.
>
>  - In the top of the testcase, "PR c++/P36408" should be "PR c++/36408"

Fixed as well.

Thank you for your comments.


-- 

dodji at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #15989|0                           |1
        is obsolete|                            |


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (11 preceding siblings ...)
  2008-08-01 13:33 ` dodji at gcc dot gnu dot org
@ 2008-08-01 14:07 ` dgregor at gcc dot gnu dot org
  2008-08-01 17:56 ` dodji at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2008-08-01 14:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from dgregor at gcc dot gnu dot org  2008-08-01 14:05 -------
(In reply to comment #9)
> >  - the error message we give in this case is pretty poor. Here we have an
> >empty initializer, but the error message we get back is "void value not ignored
> >as it ought to be", which really doesn't tell us much of anything about the
> >problem.
> 
> I agree. Though I think addressing that should be best done in another bug
> that we can open straight away when we close this one, if you agree.

Agreed.

> >  - since the statement-expression is obviously empty, can we produce this
> >error message at template definition time, rather than waiting until
> >instantiation time? (If the answer isn't a quick "yes", don't worry about it;
> >I'll eventually be going through the initialization bits to check more of them
> >at template definition time anyway.)
> 
> Yes, that would be handy. Though here again, I think we should be opening
> another bug to track that.

It's probably not worth opening a bug report for this, unless it's some
placeholder bug that says, "we should diagnose as many errors as template
definition time as possible." Such a bug is almost impossible to close :)

Your updated patch looks good, but I can't approve it. I suggesting pinging
Jason to get approval.


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (12 preceding siblings ...)
  2008-08-01 14:07 ` dgregor at gcc dot gnu dot org
@ 2008-08-01 17:56 ` dodji at gcc dot gnu dot org
  2008-08-27 22:09 ` jsm28 at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2008-08-01 17:56 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from dodji at gcc dot gnu dot org  2008-08-01 17:54 -------
Doug, thanks for your comments.

I have submitted the patch to the list
http://gcc.gnu.org/ml/gcc-patches/2008-08/msg00082.html.


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (13 preceding siblings ...)
  2008-08-01 17:56 ` dodji at gcc dot gnu dot org
@ 2008-08-27 22:09 ` jsm28 at gcc dot gnu dot org
  2009-01-24 10:24 ` rguenth at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2008-08-27 22:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from jsm28 at gcc dot gnu dot org  2008-08-27 22:04 -------
4.3.2 is released, changing milestones to 4.3.3.


-- 

jsm28 at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.2                       |4.3.3


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (14 preceding siblings ...)
  2008-08-27 22:09 ` jsm28 at gcc dot gnu dot org
@ 2009-01-24 10:24 ` rguenth at gcc dot gnu dot org
  2009-08-04 12:40 ` [Bug c++/36408] [4.3/4.4/4.5 " rguenth at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-01-24 10:24 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from rguenth at gcc dot gnu dot org  2009-01-24 10:20 -------
GCC 4.3.3 is being released, adjusting target milestone.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.3                       |4.3.4


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4/4.5 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (15 preceding siblings ...)
  2009-01-24 10:24 ` rguenth at gcc dot gnu dot org
@ 2009-08-04 12:40 ` rguenth at gcc dot gnu dot org
  2009-11-28  9:23 ` dodji at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-08-04 12:40 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from rguenth at gcc dot gnu dot org  2009-08-04 12:29 -------
GCC 4.3.4 is being released, adjusting target milestone.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.4                       |4.3.5


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4/4.5 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (16 preceding siblings ...)
  2009-08-04 12:40 ` [Bug c++/36408] [4.3/4.4/4.5 " rguenth at gcc dot gnu dot org
@ 2009-11-28  9:23 ` dodji at gcc dot gnu dot org
  2009-11-28 22:56 ` dodji at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2009-11-28  9:23 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from dodji at gcc dot gnu dot org  2009-11-28 09:22 -------
I didn't look at this issue in a while. I just posted another attempt at
http://gcc.gnu.org/ml/gcc-patches/2009-11/msg01564.html


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4/4.5 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (17 preceding siblings ...)
  2009-11-28  9:23 ` dodji at gcc dot gnu dot org
@ 2009-11-28 22:56 ` dodji at gcc dot gnu dot org
  2009-11-28 22:58 ` dodji at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2009-11-28 22:56 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from dodji at gcc dot gnu dot org  2009-11-28 22:56 -------
Subject: Bug 36408

Author: dodji
Date: Sat Nov 28 22:55:52 2009
New Revision: 154731

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=154731
Log:
Fix PR c++/36408

gcc/cp/ChangeLog:

        PR c++/36408
        * cp-tree.h (empty_expr_stmt_p): Declare ...
        * semantics.c (empty_expr_stmt_p): ... this.
        * pt.c (tsubst_copy_and_build) <STMT_EXPR>: Use it.

gcc/testsuite/ChangeLog:
        PR c++/36408
        * g++.dg/template/stmtexpr2.C: New test.

Added:
    trunk/gcc/testsuite/g++.dg/template/stmtexpr2.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/pt.c
    trunk/gcc/cp/semantics.c
    trunk/gcc/testsuite/ChangeLog


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4/4.5 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (18 preceding siblings ...)
  2009-11-28 22:56 ` dodji at gcc dot gnu dot org
@ 2009-11-28 22:58 ` dodji at gcc dot gnu dot org
  2009-11-29  4:09 ` hjl dot tools at gmail dot com
                   ` (2 subsequent siblings)
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2009-11-28 22:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from dodji at gcc dot gnu dot org  2009-11-28 22:58 -------
Fixed in 4.5
I don't plan to fix it in the branches.


-- 

dodji at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|4.3.5                       |4.5.0


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4/4.5 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (19 preceding siblings ...)
  2009-11-28 22:58 ` dodji at gcc dot gnu dot org
@ 2009-11-29  4:09 ` hjl dot tools at gmail dot com
  2009-11-29 19:19 ` dodji at gcc dot gnu dot org
  2009-11-29 20:43 ` dodji at gcc dot gnu dot org
  22 siblings, 0 replies; 24+ messages in thread
From: hjl dot tools at gmail dot com @ 2009-11-29  4:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #18 from hjl dot tools at gmail dot com  2009-11-29 04:08 -------
The testcase failed on Linux/ia32:

FAIL: g++.dg/template/stmtexpr2.C  (test for errors, line 10)
FAIL: g++.dg/template/stmtexpr2.C  (test for errors, line 17)


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4/4.5 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (20 preceding siblings ...)
  2009-11-29  4:09 ` hjl dot tools at gmail dot com
@ 2009-11-29 19:19 ` dodji at gcc dot gnu dot org
  2009-11-29 20:43 ` dodji at gcc dot gnu dot org
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2009-11-29 19:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #19 from dodji at gcc dot gnu dot org  2009-11-29 19:19 -------
Subject: Bug 36408

Author: dodji
Date: Sun Nov 29 19:19:06 2009
New Revision: 154742

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=154742
Log:
Really fix PR c++/36408

gcc/cp/ChangeLog:

        PR c++/36408
        * semantics.c (empty_expr_stmt_p): Handle void_zero_node and fix
        bad indentation.
        * pt.c (tsubst_copy_and_build): Fix typo.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/pt.c
    trunk/gcc/cp/semantics.c


-- 


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Bug c++/36408] [4.3/4.4/4.5 regression] ICE with statement expression in template
  2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
                   ` (21 preceding siblings ...)
  2009-11-29 19:19 ` dodji at gcc dot gnu dot org
@ 2009-11-29 20:43 ` dodji at gcc dot gnu dot org
  22 siblings, 0 replies; 24+ messages in thread
From: dodji at gcc dot gnu dot org @ 2009-11-29 20:43 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #20 from dodji at gcc dot gnu dot org  2009-11-29 20:43 -------
OK, it should really be fixed in 4.5 now.


-- 

dodji at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|                            |FIXED


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


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2009-11-29 20:43 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-06-01 10:46 [Bug c++/36408] New: [4.3/4.4 regression] ICE with statement expression in template reichelt at gcc dot gnu dot org
2008-06-01 10:47 ` [Bug c++/36408] " reichelt at gcc dot gnu dot org
2008-06-06 15:05 ` rguenth at gcc dot gnu dot org
2008-06-06 20:30 ` rguenth at gcc dot gnu dot org
2008-06-11  6:32 ` jakub at gcc dot gnu dot org
2008-06-11  6:49 ` jakub at gcc dot gnu dot org
2008-06-12 10:14 ` jakub at gcc dot gnu dot org
2008-08-01  8:56 ` dodji at gcc dot gnu dot org
2008-08-01  8:56 ` dodji at gcc dot gnu dot org
2008-08-01  9:09 ` paolo dot carlini at oracle dot com
2008-08-01  9:34 ` dodji at gcc dot gnu dot org
2008-08-01 11:57 ` dgregor at gcc dot gnu dot org
2008-08-01 13:33 ` dodji at gcc dot gnu dot org
2008-08-01 14:07 ` dgregor at gcc dot gnu dot org
2008-08-01 17:56 ` dodji at gcc dot gnu dot org
2008-08-27 22:09 ` jsm28 at gcc dot gnu dot org
2009-01-24 10:24 ` rguenth at gcc dot gnu dot org
2009-08-04 12:40 ` [Bug c++/36408] [4.3/4.4/4.5 " rguenth at gcc dot gnu dot org
2009-11-28  9:23 ` dodji at gcc dot gnu dot org
2009-11-28 22:56 ` dodji at gcc dot gnu dot org
2009-11-28 22:58 ` dodji at gcc dot gnu dot org
2009-11-29  4:09 ` hjl dot tools at gmail dot com
2009-11-29 19:19 ` dodji at gcc dot gnu dot org
2009-11-29 20:43 ` dodji at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).