public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type
@ 2004-12-30 13:18 giovannibajo at libero dot it
  2004-12-30 13:19 ` [Bug c++/19208] " giovannibajo at libero dot it
                   ` (14 more replies)
  0 siblings, 15 replies; 16+ messages in thread
From: giovannibajo at libero dot it @ 2004-12-30 13:18 UTC (permalink / raw)
  To: gcc-bugs

Hello,

the code I will attacch shortly is a (partial) reduction from a multi-thousands 
line testcase from Boost which fails with 4.0.

This is the link to the failure in the automatic testers:
http://ln-s.net/2$N

-- 
           Summary: [4.0 Regression] Spurious error about variably modified
                    type
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Keywords: rejects-valid
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: giovannibajo at libero dot it
                CC: gcc-bugs at gcc dot gnu dot org


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


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

* [Bug c++/19208] [4.0 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
@ 2004-12-30 13:19 ` giovannibajo at libero dot it
  2004-12-30 13:21 ` giovannibajo at libero dot it
                   ` (13 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: giovannibajo at libero dot it @ 2004-12-30 13:19 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2004-12-30 13:19 -------
Created an attachment (id=7845)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7845&action=view)
Reduced testcase (but not minimal)


-- 


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


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

* [Bug c++/19208] [4.0 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
  2004-12-30 13:19 ` [Bug c++/19208] " giovannibajo at libero dot it
@ 2004-12-30 13:21 ` giovannibajo at libero dot it
  2004-12-30 13:22 ` steven at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: giovannibajo at libero dot it @ 2004-12-30 13:21 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |critical
           Priority|P2                          |P1
   Target Milestone|---                         |4.0.0


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


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

* [Bug c++/19208] [4.0 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
  2004-12-30 13:19 ` [Bug c++/19208] " giovannibajo at libero dot it
  2004-12-30 13:21 ` giovannibajo at libero dot it
@ 2004-12-30 13:22 ` steven at gcc dot gnu dot org
  2004-12-30 13:51 ` [Bug c++/19208] [3.4/4.0 " giovannibajo at libero dot it
                   ` (11 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: steven at gcc dot gnu dot org @ 2004-12-30 13:22 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From steven at gcc dot gnu dot org  2004-12-30 13:22 -------
A regression from what?  Does 3.4 accept it?


-- 


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


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

* [Bug c++/19208] [3.4/4.0 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (2 preceding siblings ...)
  2004-12-30 13:22 ` steven at gcc dot gnu dot org
@ 2004-12-30 13:51 ` giovannibajo at libero dot it
  2004-12-30 14:27 ` pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: giovannibajo at libero dot it @ 2004-12-30 13:51 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2004-12-30 13:51 -------
3.4 is broken too, it's a regression from 3.3 actually.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |4.0.0 3.4.3
      Known to work|                            |3.3.3
            Summary|[4.0 Regression] Spurious   |[3.4/4.0 Regression]
                   |error about variably        |Spurious error about
                   |modified type               |variably modified type
   Target Milestone|4.0.0                       |3.4.4


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


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

* [Bug c++/19208] [3.4/4.0 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (3 preceding siblings ...)
  2004-12-30 13:51 ` [Bug c++/19208] [3.4/4.0 " giovannibajo at libero dot it
@ 2004-12-30 14:27 ` pinskia at gcc dot gnu dot org
  2005-01-15 23:10 ` ssolie at telus dot net
                   ` (9 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-12-30 14:27 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-30 14:27 -------
Reduced testcase:
template <class C> struct if_t { typedef int type; };
template <class T> struct ffff { static const bool value = true; };
template <class A>
struct bound_member_action
{
  typedef char f[ffff<A>::value ? 1 : 2];
  template <class CT>
  bound_member_action(CT i, typename if_t<f>::type g)  {}
};
bound_member_action<int> a(0, 1);



: Search converges between 2004-01-27-trunk (#442) and 2004-01-28-trunk (#443).

Just a note that date is when it started to seg fault.
We started to reject this (and not an ICE):
: Search converges between 2004-03-01-3.4 (#2) and 2004-03-15-3.4 (#3).
: Search converges between 2004-03-01-trunk (#446) and 2004-04-01-trunk (#447).


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2004-12-30 14:27:10
               date|                            |


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


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

* [Bug c++/19208] [3.4/4.0 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (4 preceding siblings ...)
  2004-12-30 14:27 ` pinskia at gcc dot gnu dot org
@ 2005-01-15 23:10 ` ssolie at telus dot net
  2005-01-20  3:08 ` giovannibajo at libero dot it
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: ssolie at telus dot net @ 2005-01-15 23:10 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ssolie at telus dot net  2005-01-15 23:10 -------
Please add 3.4.2 to known to fail list.

7.Code:test> g++ -c bound_member.cpp
bound_member.cpp: In instantiation of `bound_member_action<int>':
bound_member.cpp:10:   instantiated from here
bound_member.cpp:8: error: `char[(ffff<int>::value ? 1 : 2)]' is a variably modified type
bound_member.cpp:8: error:   trying to instantiate `template<class C> struct if_t'
bound_member.cpp:10: error: no matching function for call to `bound_member_action<int>::bound_member_action(int, int)'
bound_member.cpp:5: note: candidates are: bound_member_action<int>::bound_member_action(const bound_member_action<int>&)

g++ (GCC) 3.4.2 (Amiga, Inc. build 20040910)

Encountered when building Boost Spirit/Phoenix library test suite.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ssolie at telus dot net


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


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

* [Bug c++/19208] [3.4/4.0 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (5 preceding siblings ...)
  2005-01-15 23:10 ` ssolie at telus dot net
@ 2005-01-20  3:08 ` giovannibajo at libero dot it
  2005-01-20 10:44 ` giovannibajo at libero dot it
                   ` (7 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: giovannibajo at libero dot it @ 2005-01-20  3:08 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2005-01-20 03:08 -------
Testing a patch

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |giovannibajo at libero dot
                   |dot org                     |it
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2004-12-30 14:27:10         |2005-01-20 03:08:01
               date|                            |


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


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

* [Bug c++/19208] [3.4/4.0 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (6 preceding siblings ...)
  2005-01-20  3:08 ` giovannibajo at libero dot it
@ 2005-01-20 10:44 ` giovannibajo at libero dot it
  2005-01-21  2:27 ` cvs-commit at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: giovannibajo at libero dot it @ 2005-01-20 10:44 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2005-01-20 10:43 -------
Patch here:
http://gcc.gnu.org/ml/gcc-patches/2005-01/msg01305.html

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |patch


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


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

* [Bug c++/19208] [3.4/4.0 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (7 preceding siblings ...)
  2005-01-20 10:44 ` giovannibajo at libero dot it
@ 2005-01-21  2:27 ` cvs-commit at gcc dot gnu dot org
  2005-01-21  2:29 ` [Bug c++/19208] [3.4 " giovannibajo at libero dot it
                   ` (5 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-01-21  2:27 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-01-21 02:27 -------
Subject: Bug 19208

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	giovannibajo@gcc.gnu.org	2005-01-21 02:27:17

Modified files:
	gcc/cp         : ChangeLog pt.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/g++.dg/template: array11.C 

Log message:
	PR c++/19208
	* pt.c (fold_decl_constant_value): Always call fold_non_dependent_expr
	at least once.
	(tsubst): Use fold_decl_constant_value in place of a bare call to
	integral_constant_value.
	
	PR c++/19208
	* g++.dg/template/array11.C: New test.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.4589&r2=1.4590
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&r1=1.967&r2=1.968
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.4916&r2=1.4917
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/array11.C.diff?cvsroot=gcc&r1=NONE&r2=1.1



-- 


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


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

* [Bug c++/19208] [3.4 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (8 preceding siblings ...)
  2005-01-21  2:27 ` cvs-commit at gcc dot gnu dot org
@ 2005-01-21  2:29 ` giovannibajo at libero dot it
  2005-01-24  8:30 ` bonzini at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: giovannibajo at libero dot it @ 2005-01-21  2:29 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2005-01-21 02:29 -------
Fixed in 4.0, the patch needs a little bit of tweaking for 3.4.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[3.4/4.0 Regression]        |[3.4 Regression] Spurious
                   |Spurious error about        |error about variably
                   |variably modified type      |modified type


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


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

* [Bug c++/19208] [3.4 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (9 preceding siblings ...)
  2005-01-21  2:29 ` [Bug c++/19208] [3.4 " giovannibajo at libero dot it
@ 2005-01-24  8:30 ` bonzini at gcc dot gnu dot org
  2005-05-19 17:40 ` mmitchel at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: bonzini at gcc dot gnu dot org @ 2005-01-24  8:30 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bonzini at gcc dot gnu dot org  2005-01-24 08:29 -------
Removing 4.0.0 from known-to-fail list.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|4.0.0 3.4.3 3.4.0           |3.4.3 3.4.0


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


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

* [Bug c++/19208] [3.4 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (10 preceding siblings ...)
  2005-01-24  8:30 ` bonzini at gcc dot gnu dot org
@ 2005-05-19 17:40 ` mmitchel at gcc dot gnu dot org
  2005-07-25 20:43 ` giovannibajo at libero dot it
                   ` (2 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-05-19 17:40 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|3.4.4                       |3.4.5


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


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

* [Bug c++/19208] [3.4 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (11 preceding siblings ...)
  2005-05-19 17:40 ` mmitchel at gcc dot gnu dot org
@ 2005-07-25 20:43 ` giovannibajo at libero dot it
  2005-07-25 21:14 ` cvs-commit at gcc dot gnu dot org
  2005-07-25 21:32 ` giovannibajo at libero dot it
  14 siblings, 0 replies; 16+ messages in thread
From: giovannibajo at libero dot it @ 2005-07-25 20:43 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2005-07-25 20:41 -------
Patch posted for 3.4:
http://gcc.gnu.org/ml/gcc-patches/2005-07/msg01653.html

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |http://gcc.gnu.org/ml/gcc-
                   |                            |patches/2005-
                   |                            |07/msg01653.html


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


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

* [Bug c++/19208] [3.4 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (12 preceding siblings ...)
  2005-07-25 20:43 ` giovannibajo at libero dot it
@ 2005-07-25 21:14 ` cvs-commit at gcc dot gnu dot org
  2005-07-25 21:32 ` giovannibajo at libero dot it
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-07-25 21:14 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-07-25 21:13 -------
Subject: Bug 19208

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-branch
Changes by:	giovannibajo@gcc.gnu.org	2005-07-25 21:13:18

Modified files:
	gcc/cp         : ChangeLog pt.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/g++.dg/template: array11.C 

Log message:
	cp/
	PR c++/19208
	* pt.c (tsubst): Use fold_non_dependent_expr to	fold array domains.
	
	testsuite/
	PR c++/19208
	* g++.dg/template/array11.C: New test.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.3892.2.227&r2=1.3892.2.228
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.816.2.55&r2=1.816.2.56
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.3389.2.408&r2=1.3389.2.409
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/array11.C.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=NONE&r2=1.1.34.1



-- 


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


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

* [Bug c++/19208] [3.4 Regression] Spurious error about variably modified type
  2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
                   ` (13 preceding siblings ...)
  2005-07-25 21:14 ` cvs-commit at gcc dot gnu dot org
@ 2005-07-25 21:32 ` giovannibajo at libero dot it
  14 siblings, 0 replies; 16+ messages in thread
From: giovannibajo at libero dot it @ 2005-07-25 21:32 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2005-07-25 21:13 -------
Fixed in GCC 3.4.5 too.

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


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


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

end of thread, other threads:[~2005-07-25 21:14 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-12-30 13:18 [Bug c++/19208] New: [4.0 Regression] Spurious error about variably modified type giovannibajo at libero dot it
2004-12-30 13:19 ` [Bug c++/19208] " giovannibajo at libero dot it
2004-12-30 13:21 ` giovannibajo at libero dot it
2004-12-30 13:22 ` steven at gcc dot gnu dot org
2004-12-30 13:51 ` [Bug c++/19208] [3.4/4.0 " giovannibajo at libero dot it
2004-12-30 14:27 ` pinskia at gcc dot gnu dot org
2005-01-15 23:10 ` ssolie at telus dot net
2005-01-20  3:08 ` giovannibajo at libero dot it
2005-01-20 10:44 ` giovannibajo at libero dot it
2005-01-21  2:27 ` cvs-commit at gcc dot gnu dot org
2005-01-21  2:29 ` [Bug c++/19208] [3.4 " giovannibajo at libero dot it
2005-01-24  8:30 ` bonzini at gcc dot gnu dot org
2005-05-19 17:40 ` mmitchel at gcc dot gnu dot org
2005-07-25 20:43 ` giovannibajo at libero dot it
2005-07-25 21:14 ` cvs-commit at gcc dot gnu dot org
2005-07-25 21:32 ` giovannibajo at libero dot it

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).