public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/25369]  New: 4.0 regression: use of inline function in template class leads to undefined reference
@ 2005-12-12 14:21 peter dot soetens at fmtc dot be
  2005-12-12 14:23 ` [Bug c++/25369] " peter dot soetens at fmtc dot be
                   ` (16 more replies)
  0 siblings, 17 replies; 18+ messages in thread
From: peter dot soetens at fmtc dot be @ 2005-12-12 14:21 UTC (permalink / raw)
  To: gcc-bugs

When using boost::bind to wrap an inline function
in a function object leads, this leads to an undefined reference to that
function.
The bug is caused because the class that produces the function object is a
template class.

GCC 3.3 and 3.4 work fine. Output from 4.0 compiler is:

$ g++-4.0 test_undefined_symb4.0.cpp -o test_undefined_symb4.0
/tmp/ccBl8CSy.o: In function `Event<int>::emit()':
test_undefined_symb4.0.cpp:(.gnu.linkonce.t._ZN5EventIiE4emitEv[Event<int>::emit()]+0x21):
undefined reference to `boost::shared_ptr<E>::get() const'
collect2: ld returned 1 exit status

$ g++-4.0 --version
g++-4.0 (GCC) 4.0.2 20050808 (prerelease) (Ubuntu 4.0.1-4ubuntu9)

Attachment with example code follows.


-- 
           Summary: 4.0 regression: use of inline function in template class
                    leads to undefined reference
           Product: gcc
           Version: 4.0.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: peter dot soetens at fmtc dot be
 GCC build triplet: i486-linux-gnu
  GCC host triplet: i486-linux-gnu
GCC target triplet: i486-linux-gnu


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


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

* [Bug c++/25369] 4.0 regression: use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
@ 2005-12-12 14:23 ` peter dot soetens at fmtc dot be
  2005-12-12 19:31 ` pinskia at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: peter dot soetens at fmtc dot be @ 2005-12-12 14:23 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from peter dot soetens at fmtc dot be  2005-12-12 14:23 -------
Created an attachment (id=10458)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10458&action=view)
Valid/Invalid code generation test-case

Uncomment '#define TEMPLATE' to make the compilation work.


-- 


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


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

* [Bug c++/25369] 4.0 regression: use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
  2005-12-12 14:23 ` [Bug c++/25369] " peter dot soetens at fmtc dot be
@ 2005-12-12 19:31 ` pinskia at gcc dot gnu dot org
  2005-12-13 12:06 ` peter dot soetens at fmtc dot be
                   ` (14 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-12-12 19:31 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2005-12-12 19:31 -------
Can you attach the preprocessed source?


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING


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


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

* [Bug c++/25369] 4.0 regression: use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
  2005-12-12 14:23 ` [Bug c++/25369] " peter dot soetens at fmtc dot be
  2005-12-12 19:31 ` pinskia at gcc dot gnu dot org
@ 2005-12-13 12:06 ` peter dot soetens at fmtc dot be
  2005-12-13 12:09 ` peter dot soetens at fmtc dot be
                   ` (13 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: peter dot soetens at fmtc dot be @ 2005-12-13 12:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from peter dot soetens at fmtc dot be  2005-12-13 12:06 -------
Created an attachment (id=10469)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10469&action=view)
Failure testcase

$ g++ test_undefined_symb4_fail.ii -o test_undefined_symb4_fail
/tmp/ccSLyh1a.o: In function `Event<int>::emit()':
test_undefined_symb4.0.cpp:(.gnu.linkonce.t._ZN5EventIiE4emitEv[Event<int>::emit()]+0x21):
undefined reference to `boost::shared_ptr<E>::get() const'
collect2: ld returned 1 exit status


-- 


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


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

* [Bug c++/25369] 4.0 regression: use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (2 preceding siblings ...)
  2005-12-13 12:06 ` peter dot soetens at fmtc dot be
@ 2005-12-13 12:09 ` peter dot soetens at fmtc dot be
  2005-12-13 15:37 ` [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] " pinskia at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: peter dot soetens at fmtc dot be @ 2005-12-13 12:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from peter dot soetens at fmtc dot be  2005-12-13 12:09 -------
Created an attachment (id=10470)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10470&action=view)
Minimal change to Failure testcase to cause success

$ g++  test_undefined_symb4_ok.ii -o test_undefined_symb4_ok
works fine.


-- 


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


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

* [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (3 preceding siblings ...)
  2005-12-13 12:09 ` peter dot soetens at fmtc dot be
@ 2005-12-13 15:37 ` pinskia at gcc dot gnu dot org
  2005-12-13 15:37 ` pinskia at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-12-13 15:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from pinskia at gcc dot gnu dot org  2005-12-13 15:37 -------
I can reproduce it with 3.4.5, 4.0.2, 4.0.3, 4.1.0 and 4.2.0.  But I cannot
reduce it right now.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |link-failure
            Summary|4.0 regression: use of      |[3.4/4.0/4.1/4.2 Regression]
                   |inline function in template |use of inline function in
                   |class leads to undefined    |template class leads to
                   |reference                   |undefined reference
   Target Milestone|---                         |4.0.3


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


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

* [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (4 preceding siblings ...)
  2005-12-13 15:37 ` [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] " pinskia at gcc dot gnu dot org
@ 2005-12-13 15:37 ` pinskia at gcc dot gnu dot org
  2005-12-19 19:33 ` mmitchel at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-12-13 15:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pinskia at gcc dot gnu dot org  2005-12-13 15:37 -------
Forgot to say this worked with 3.3.5 so it is a regression.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |3.3.5


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


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

* [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (5 preceding siblings ...)
  2005-12-13 15:37 ` pinskia at gcc dot gnu dot org
@ 2005-12-19 19:33 ` mmitchel at gcc dot gnu dot org
  2005-12-21  2:49 ` reichelt at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-12-19 19:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from mmitchel at gcc dot gnu dot org  2005-12-19 19:33 -------
Why is this marked as WAITING?

We need to figure out whether this code is valid; given that it's from Boost,
it probably is.  In that case, we'll need to fix it.  P1. 


-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1


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


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

* [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (6 preceding siblings ...)
  2005-12-19 19:33 ` mmitchel at gcc dot gnu dot org
@ 2005-12-21  2:49 ` reichelt at gcc dot gnu dot org
  2005-12-22  9:17 ` reichelt at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2005-12-21  2:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from reichelt at gcc dot gnu dot org  2005-12-21 02:49 -------
Confirmed. Reduced testcase:

======================================
template<typename> struct A
{
    void foo() {}
};

void bar(void (A<int>::*)()) {}

template<int> void baz()
{
    bar(&A<int>::foo);
}

int main()
{
    baz<0>();
    return 0;
}
======================================

This fails to link since gcc 3.4.4.
I.e. we have a regression on the 3.4 branch. Ouch.


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |reichelt at gcc dot gnu dot
                   |                            |org
             Status|WAITING                     |NEW
     Ever Confirmed|0                           |1
           Keywords|                            |monitored
      Known to fail|                            |3.4.4 3.4.5 4.0.0 4.1.0
      Known to work|3.3.5                       |3.3.5 3.3.6 3.4.0 3.4.3
   Last reconfirmed|0000-00-00 00:00:00         |2005-12-21 02:49:44
               date|                            |


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


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

* [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (7 preceding siblings ...)
  2005-12-21  2:49 ` reichelt at gcc dot gnu dot org
@ 2005-12-22  9:17 ` reichelt at gcc dot gnu dot org
  2005-12-22 20:51 ` mmitchel at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2005-12-22  9:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from reichelt at gcc dot gnu dot org  2005-12-22 09:17 -------
The regression was introduced with Kriang's patch for PR 19311:
http://gcc.gnu.org/ml/gcc-cvs/2005-03/msg00242.html


-- 

reichelt at gcc dot gnu dot org changed:

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


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


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

* [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (8 preceding siblings ...)
  2005-12-22  9:17 ` reichelt at gcc dot gnu dot org
@ 2005-12-22 20:51 ` mmitchel at gcc dot gnu dot org
  2005-12-23  7:40 ` mmitchel at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-12-22 20:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from mmitchel at gcc dot gnu dot org  2005-12-22 20:51 -------
The problem here is that:

1. mark_used doesn't add inline functions to the deferred function list if
processing_template_decl.  (I guess this is a compile-time optimization, so
that the deferred function list isn't full of stuff that's only used in
uninstantiated templates.)

2. Kriang's patch means that during template instantiation there's no
substitution required; we've already resolved A<int>::foo.  So, we do no
lookup, and therefore, do not call mark_used again.  But, we don't want to do
lookup again, so Kriang's patch is a good thing.

I think the optimization in (1) is unsafe -- for exactly this test case.


-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |mark at codesourcery dot com
                   |dot org                     |
             Status|NEW                         |ASSIGNED


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


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

* [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (9 preceding siblings ...)
  2005-12-22 20:51 ` mmitchel at gcc dot gnu dot org
@ 2005-12-23  7:40 ` mmitchel at gcc dot gnu dot org
  2005-12-23  7:42 ` mmitchel at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-12-23  7:40 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from mmitchel at gcc dot gnu dot org  2005-12-23 07:40 -------
Subject: Bug 25369

Author: mmitchel
Date: Fri Dec 23 07:40:04 2005
New Revision: 109010

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109010
Log:
        PR c++/25369
        * g++.dg/template/ptrmem16.C: New test.
        PR c++/25369
        * tree.c (really_overloaded_fn): Tweak comment.
        * pt.c (tsubst_call_declarator_parms): Remove.
        (tsubst_copy): Call mark_used on the member referenced by an
        OFFSET_REF.
        * semantics.c (finish_qualified_id_expr): Simplify.
        * decl2.c (mark_used): Accept BASELINKs.

Added:
    trunk/gcc/testsuite/g++.dg/template/ptrmem16.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/decl2.c
    trunk/gcc/cp/pt.c
    trunk/gcc/cp/semantics.c
    trunk/gcc/cp/tree.c
    trunk/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (10 preceding siblings ...)
  2005-12-23  7:40 ` mmitchel at gcc dot gnu dot org
@ 2005-12-23  7:42 ` mmitchel at gcc dot gnu dot org
  2005-12-23  7:50 ` mmitchel at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-12-23  7:42 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from mmitchel at gcc dot gnu dot org  2005-12-23 07:42 -------
Subject: Bug 25369

Author: mmitchel
Date: Fri Dec 23 07:42:20 2005
New Revision: 109011

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109011
Log:
        PR c++/25369
        * pt.c (tsubst_copy): Call mark_used on the member referenced by an
        OFFSET_REF.
        * decl2.c (mark_used): Accept BASELINKs.

        PR c++/25369
        * g++.dg/template/ptrmem16.C: New test.

Added:
    branches/gcc-4_1-branch/gcc/testsuite/g++.dg/template/ptrmem16.C
Modified:
    branches/gcc-4_1-branch/gcc/cp/ChangeLog
    branches/gcc-4_1-branch/gcc/cp/decl2.c
    branches/gcc-4_1-branch/gcc/cp/pt.c
    branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (11 preceding siblings ...)
  2005-12-23  7:42 ` mmitchel at gcc dot gnu dot org
@ 2005-12-23  7:50 ` mmitchel at gcc dot gnu dot org
  2005-12-23  7:53 ` [Bug c++/25369] [3.4 " mmitchel at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-12-23  7:50 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from mmitchel at gcc dot gnu dot org  2005-12-23 07:50 -------
Subject: Bug 25369

Author: mmitchel
Date: Fri Dec 23 07:50:26 2005
New Revision: 109012

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=109012
Log:
2005-12-22  Mark Mitchell  <mark@codesourcery.com>

        PR c++/25369
        * pt.c (tsubst_copy): Call mark_used on the member referenced by an
        OFFSET_REF.
        * decl2.c (mark_used): Accept BASELINKs.

2005-12-22  Mark Mitchell  <mark@codesourcery.com>

        PR c++/25369
        * g++.dg/template/ptrmem16.C: New test.

Added:
    branches/gcc-4_0-branch/gcc/testsuite/g++.dg/template/ptrmem16.C
Modified:
    branches/gcc-4_0-branch/gcc/cp/ChangeLog
    branches/gcc-4_0-branch/gcc/cp/decl2.c
    branches/gcc-4_0-branch/gcc/cp/pt.c
    branches/gcc-4_0-branch/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug c++/25369] [3.4 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (12 preceding siblings ...)
  2005-12-23  7:50 ` mmitchel at gcc dot gnu dot org
@ 2005-12-23  7:53 ` mmitchel at gcc dot gnu dot org
  2006-01-31 20:25 ` reichelt at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-12-23  7:53 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from mmitchel at gcc dot gnu dot org  2005-12-23 07:53 -------
Fixed in 4.0.3.


-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|mark at codesourcery dot com|unassigned at gcc dot gnu
                   |                            |dot org
             Status|ASSIGNED                    |NEW
            Summary|[3.4/4.0/4.1/4.2 Regression]|[3.4 Regression] use of
                   |use of inline function in   |inline function in template
                   |template class leads to     |class leads to undefined
                   |undefined reference         |reference
   Target Milestone|4.0.3                       |3.4.6


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


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

* [Bug c++/25369] [3.4 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (13 preceding siblings ...)
  2005-12-23  7:53 ` [Bug c++/25369] [3.4 " mmitchel at gcc dot gnu dot org
@ 2006-01-31 20:25 ` reichelt at gcc dot gnu dot org
  2006-02-01 11:57 ` reichelt at gcc dot gnu dot org
  2006-02-01 11:58 ` reichelt at gcc dot gnu dot org
  16 siblings, 0 replies; 18+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-01-31 20:25 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from reichelt at gcc dot gnu dot org  2006-01-31 20:25 -------
Taking care of the backport.


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |reichelt at gcc dot gnu dot
                   |dot org                     |org
                URL|                            |http://gcc.gnu.org/ml/gcc-
                   |                            |patches/2006-
                   |                            |01/msg02230.html
             Status|NEW                         |ASSIGNED
           Keywords|                            |patch


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


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

* [Bug c++/25369] [3.4 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (14 preceding siblings ...)
  2006-01-31 20:25 ` reichelt at gcc dot gnu dot org
@ 2006-02-01 11:57 ` reichelt at gcc dot gnu dot org
  2006-02-01 11:58 ` reichelt at gcc dot gnu dot org
  16 siblings, 0 replies; 18+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-02-01 11:57 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from reichelt at gcc dot gnu dot org  2006-02-01 11:57 -------
Subject: Bug 25369

Author: reichelt
Date: Wed Feb  1 11:57:42 2006
New Revision: 110473

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110473
Log:
        Backport:
        2005-12-22  Mark Mitchell  <mark@codesourcery.com>

        PR c++/25369
        * pt.c (tsubst_copy): Call mark_used on the member referenced by an
        OFFSET_REF.
        * decl2.c (mark_used): Accept BASELINKs.

        * g++.dg/template/ptrmem16.C: New test.

Added:
    branches/gcc-3_4-branch/gcc/testsuite/g++.dg/template/ptrmem16.C
Modified:
    branches/gcc-3_4-branch/gcc/cp/ChangeLog
    branches/gcc-3_4-branch/gcc/cp/decl2.c
    branches/gcc-3_4-branch/gcc/cp/pt.c
    branches/gcc-3_4-branch/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug c++/25369] [3.4 Regression] use of inline function in template class leads to undefined reference
  2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
                   ` (15 preceding siblings ...)
  2006-02-01 11:57 ` reichelt at gcc dot gnu dot org
@ 2006-02-01 11:58 ` reichelt at gcc dot gnu dot org
  16 siblings, 0 replies; 18+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-02-01 11:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from reichelt at gcc dot gnu dot org  2006-02-01 11:58 -------
Now also fixed on the 3.4 branch.


-- 

reichelt at gcc dot gnu dot org changed:

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


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


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

end of thread, other threads:[~2006-02-01 11:58 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-12-12 14:21 [Bug c++/25369] New: 4.0 regression: use of inline function in template class leads to undefined reference peter dot soetens at fmtc dot be
2005-12-12 14:23 ` [Bug c++/25369] " peter dot soetens at fmtc dot be
2005-12-12 19:31 ` pinskia at gcc dot gnu dot org
2005-12-13 12:06 ` peter dot soetens at fmtc dot be
2005-12-13 12:09 ` peter dot soetens at fmtc dot be
2005-12-13 15:37 ` [Bug c++/25369] [3.4/4.0/4.1/4.2 Regression] " pinskia at gcc dot gnu dot org
2005-12-13 15:37 ` pinskia at gcc dot gnu dot org
2005-12-19 19:33 ` mmitchel at gcc dot gnu dot org
2005-12-21  2:49 ` reichelt at gcc dot gnu dot org
2005-12-22  9:17 ` reichelt at gcc dot gnu dot org
2005-12-22 20:51 ` mmitchel at gcc dot gnu dot org
2005-12-23  7:40 ` mmitchel at gcc dot gnu dot org
2005-12-23  7:42 ` mmitchel at gcc dot gnu dot org
2005-12-23  7:50 ` mmitchel at gcc dot gnu dot org
2005-12-23  7:53 ` [Bug c++/25369] [3.4 " mmitchel at gcc dot gnu dot org
2006-01-31 20:25 ` reichelt at gcc dot gnu dot org
2006-02-01 11:57 ` reichelt at gcc dot gnu dot org
2006-02-01 11:58 ` reichelt 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).