[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-03-06 Thread lerdsuwa at gcc dot gnu dot org

--- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-03-06 
17:16 ---
Fixed in 3.4 and 4.0 branches.

-- 
   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-03-06 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-03-06 
17:12 ---
Subject: Bug 19311

CVSROOT:/cvs/gcc
Module name:gcc
Branch: gcc-4_0-branch
Changes by: [EMAIL PROTECTED]   2005-03-06 17:12:12

Modified files:
gcc/cp : ChangeLog init.c pt.c typeck.c 
gcc/testsuite  : ChangeLog 
Added files:
gcc/testsuite/g++.dg/template: non-dependent11.C 

Log message:
PR c++/19311
* init.c (build_offset_ref): Don't build non-dependent SCOPE_REF.
* pt.c (build_non_dependent_expr): Don't build NON_DEPENDENT_EXPR
for OFFSET_TYPE.
* typeck.c (build_x_unary_op): Don't build non-dependent SCOPE_REF.
Also set PTRMEM_OK_P for NON_DEPENDENT_EXPR.
(build_unary_op): Handle building ADDR_EXPR of OFFSET_REF inside
template.

* g++.dg/template/non-dependent11.C: New test.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.4648.2.3&r2=1.4648.2.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/init.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.412&r2=1.412.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.978&r2=1.978.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/typeck.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.616&r2=1.616.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.5084.2.19&r2=1.5084.2.20
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/non-dependent11.C.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.4.1



-- 


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-03-06 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-03-06 
16:59 ---
Subject: Bug 19311

CVSROOT:/cvs/gcc
Module name:gcc
Branch: gcc-3_4-branch
Changes by: [EMAIL PROTECTED]   2005-03-06 16:59:19

Modified files:
gcc/cp : ChangeLog init.c pt.c typeck.c 
gcc/testsuite  : ChangeLog 
Added files:
gcc/testsuite/g++.dg/template: non-dependent11.C 

Log message:
PR c++/19311
* init.c (build_offset_ref): Don't build non-dependent SCOPE_REF.
* pt.c (build_non_dependent_expr): Don't build NON_DEPENDENT_EXPR
for OFFSET_TYPE.
* typeck.c (build_x_unary_op): Don't build non-dependent SCOPE_REF.
Also set PTRMEM_OK_P for NON_DEPENDENT_EXPR.
(build_unary_op): Handle building ADDR_EXPR of OFFSET_REF inside
template.

* g++.dg/template/non-dependent11.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.203&r2=1.3892.2.204
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/init.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.356.2.15&r2=1.356.2.16
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.51&r2=1.816.2.52
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/typeck.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.519.2.22&r2=1.519.2.23
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.368&r2=1.3389.2.369
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/non-dependent11.C.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=NONE&r2=1.1.2.1



-- 


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-03-05 Thread lerdsuwa at gcc dot gnu dot org

--- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-03-05 
15:46 ---
Fixed in the mainline.  Other branches are being tested and will be
fixed once I finish retesting the patch.

-- 
   What|Removed |Added

Summary|[3.4/4.0/4.1 Regression] ICE|[3.4/4.0 Regression] ICE in
   |in  |resolve_overloaded_unificati
   |resolve_overloaded_unificati|on
   |on  |


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-02-01 Thread caolanm at redhat dot com

--- Additional Comments From caolanm at redhat dot com  2005-02-01 15:04 
---
breaks current OOo2 build

-- 
   What|Removed |Added

 CC||caolanm at redhat dot com


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-17 Thread lerdsuwa at gcc dot gnu dot org

--- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-01-17 
16:19 ---
(In reply to comment #9)
> Why a new tree node? We are moving away from using trees also for container-
> type data structures. You can write a normal structure with the node that 
> must 
> be access-checked and the line info, and put it into a Vec.

This is only a rough idea.  The actual implementation could be
different.

-- 


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-17 Thread giovannibajo at libero dot it

--- Additional Comments From giovannibajo at libero dot it  2005-01-17 
15:25 ---
(In reply to comment #7)
> Fixing it by queuing access checking until instantiation time 
> turns out to be nasty:
> - Need to invent new tree node, the current TREE_LIST cannot
>   store the line number information.

Why a new tree node? We are moving away from using trees also for container-
type data structures. You can write a normal structure with the node that must 
be access-checked and the line info, and put it into a Vec.


-- 


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-17 Thread lerdsuwa at gcc dot gnu dot org

--- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-01-17 
14:37 ---
Patch submitted that fixes the ICE:
  http://gcc.gnu.org/ml/gcc-patches/2005-01/msg01007.html

Queuing access checking until instantiation time will be addressed
in 4.1.  That issue has already been covered by PR16617 so this bug
can be closed once the ICE is fixed.


-- 
   What|Removed |Added

   Keywords||patch


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-12 Thread lerdsuwa at gcc dot gnu dot org

--- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-01-13 
06:06 ---
Fixing it by queuing access checking until instantiation time 
turns out to be nasty:
- Need to invent new tree node, the current TREE_LIST cannot
  store the line number information.
- If only non-dependent qualified id are queued, need to check
  which one to queue.  If all are queued, then extra template 
  substitutions are needed which slow down the compiler.
I think the required changes is too big for 4.0 at this point.


-- 


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-12 Thread lerdsuwa at gcc dot gnu dot org

--- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-01-12 
10:49 ---
Patch in progress.

-- 


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-10 Thread lerdsuwa at gcc dot gnu dot org

--- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-01-10 
14:11 ---
Will look at it.

-- 
   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |lerdsuwa at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2005-01-07 13:45:56 |2005-01-10 14:11:04
   date||


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-09 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-10 
00:50 ---
I almost think this was caused by:
2004-07-18  Kriang Lerdsuwanakij  <[EMAIL PROTECTED]>
2004-07-28  Kriang Lerdsuwanakij  <[EMAIL PROTECTED]>

PR c++/13092

Because that is when the date matches up for the regression hunter's dates on 
both the 3.4 branch and 
the mainline.

-- 
   What|Removed |Added

 CC||lerdsuwa at users dot
   ||sourceforge dot net


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-08 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-08 
22:52 ---
: Search converges between 2004-07-18-trunk (#489) and 2004-07-19-trunk (#490).
: Search converges between 2004-07-28-3.4 (#35) and 2004-07-29-3.4 (#36).

-- 


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-07 Thread bangerth at dealii dot org

--- Additional Comments From bangerth at dealii dot org  2005-01-07 20:58 
---
This one is simpler: 
- 
template   void foo (R (T::*x) ()); 
template  void foo (R (T::*x) (C)); 
 
template struct I { 
  int o (); 
  int o () const; 
}; 
 
template  void bar (void) { 
  foo  > (&I<1>::o); 
} 
--- 
 
g/x> /home/bangerth/bin/gcc-4.0-pre/bin/c++ -c x.cc 
x.cc: In function ?void bar()?: 
x.cc:10: internal compiler error: in resolve_overloaded_unification, at 
cp/pt.c:9523 
Please submit a full bug report, 
with preprocessed source if appropriate. 
See http://gcc.gnu.org/bugs.html> for instructions. 
 
W. 

-- 


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-07 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

   Severity|minor   |normal


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


[Bug c++/19311] [3.4/4.0 Regression] ICE in resolve_overloaded_unification

2005-01-07 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-07 
13:45 ---
Confirmed.

-- 
   What|Removed |Added

   Severity|normal  |minor
 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Keywords||ice-on-valid-code
  Known to fail||3.4.0 4.0.0
  Known to work||3.3.2
   Last reconfirmed|-00-00 00:00:00 |2005-01-07 13:45:56
   date||
Summary|ICE in  |[3.4/4.0 Regression] ICE in
   |resolve_overloaded_unificati|resolve_overloaded_unificati
   |on  |on
   Target Milestone|--- |3.4.4


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