Launchpad has imported 11 comments from the remote bug at
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24163.

If you reply to an imported comment from within Launchpad, your comment
will be sent to the remote bug automatically. Read more about
Launchpad's inter-bugtracker facilities at
https://help.launchpad.net/InterBugTracking.

------------------------------------------------------------------------
On 2005-10-01T16:24:48+00:00 Jwakely-gcc wrote:

(I first posted this code to PR5660 but it's apparently a separate
issue)

   template <typename T>
     struct A
     {
         typedef T Type;
         void f(Type) {}
     };

   template <typename T>
     struct B : A<T>
     {
         typedef typename A<T>::Type Type;
         void ff(Type t) { f(t); }         // XXX
     };

   template struct B<int>;

This should fail to compile, according to 14.6.2/3, but 3.4 - 4.1 (and probably
earlier) accept it.

If A::f and the call to it are changed to take no arguments (so that f is not a
dependent name) then it fails, so it is apparently only at instantiation that
the base class scope is examined.

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/0

------------------------------------------------------------------------
On 2005-10-01T16:28:10+00:00 Pinskia wrote:

Confirmed.

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/1

------------------------------------------------------------------------
On 2005-10-01T16:48:44+00:00 Jwakely-gcc wrote:

Adding "... in template" to end of title.


Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/2

------------------------------------------------------------------------
On 2009-12-05T00:01:56+00:00 Pinskia wrote:

*** Bug 42291 has been marked as a duplicate of this bug. ***

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/3

------------------------------------------------------------------------
On 2009-12-05T00:03:48+00:00 Pinskia wrote:

This is related to PR 15272 where we look at both dependent and non
dependent base classes when only non dependent should be looked at.
Actually I think this is a dup of that bug but I will leave it to a C++
expert.

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/4

------------------------------------------------------------------------
On 2010-11-30T19:14:37+00:00 Pinskia wrote:

*** Bug 43282 has been marked as a duplicate of this bug. ***

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/5

------------------------------------------------------------------------
On 2011-02-02T11:57:52+00:00 Redi wrote:

*** Bug 47585 has been marked as a duplicate of this bug. ***

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/6

------------------------------------------------------------------------
On 2011-05-20T18:01:27+00:00 Jason-gcc wrote:

Author: jason
Date: Fri May 20 18:01:22 2011
New Revision: 173965

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=173965
Log:
        PR c++/24163
        PR c++/29131
gcc/cp/
        * pt.c (tsubst_copy_and_build) [CALL_EXPR]: Avoid repeating
        unqualified lookup.
        * semantics.c (perform_koenig_lookup): Add complain parm.
        * cp-tree.h: Adjust.
        * parser.c (cp_parser_postfix_expression): Adjust.
        (cp_parser_perform_range_for_lookup): Adjust.
libstdc++-v3/
        * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
        functions from dependent bases.
        * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
        * include/ext/pb_ds/detail/rb_tree_map_/
        split_join_fn_imps.hpp: Likewise.
        * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
        * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
        * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
        * include/ext/pb_ds/detail/splay_tree_/
        split_join_fn_imps.hpp: Likewise.
        * include/ext/pb_ds/detail/tree_policy/
        order_statistics_imp.hpp: Likewise.
        * include/ext/pb_ds/detail/trie_policy/
        prefix_search_node_update_imp.hpp: Likewise.
        * include/ext/rc_string_base.h: Likewise.
        * include/ext/rope: Likewise.
        * include/ext/ropeimpl.h: Likewise.
        * testsuite/util/exception/safety.h: Likewise.
        * testsuite/util/native_type/native_priority_queue.hpp: Likewise.
        * testsuite/util/testsuite_io.h: Likewise.
        * include/std/functional: Declare mem_fn earlier.
        * include/tr1/functional: Likewise.
        * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.

Added:
    trunk/gcc/testsuite/g++.dg/template/koenig9.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/parser.c
    trunk/gcc/cp/pt.c
    trunk/gcc/cp/semantics.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/opt/pr47615.C
    trunk/gcc/testsuite/g++.dg/overload/defarg1.C
    trunk/gcc/testsuite/g++.dg/tc1/dr213.C
    trunk/gcc/testsuite/g++.dg/torture/pr34850.C
    trunk/gcc/testsuite/g++.dg/torture/pr39362.C
    trunk/gcc/testsuite/g++.old-deja/g++.brendan/crash56.C
    trunk/gcc/testsuite/g++.old-deja/g++.pt/memtemp47.C
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/ext/pb_ds/assoc_container.hpp
    trunk/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp
    
trunk/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp
    trunk/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp
    trunk/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp
    trunk/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp
    
trunk/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp
    
trunk/libstdc++-v3/include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp
    
trunk/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp
    trunk/libstdc++-v3/include/ext/rc_string_base.h
    trunk/libstdc++-v3/include/ext/rope
    trunk/libstdc++-v3/include/ext/ropeimpl.h
    trunk/libstdc++-v3/include/std/functional
    trunk/libstdc++-v3/include/tr1/exp_integral.tcc
    trunk/libstdc++-v3/include/tr1/functional
    trunk/libstdc++-v3/testsuite/util/exception/safety.h
    trunk/libstdc++-v3/testsuite/util/native_type/native_priority_queue.hpp
    trunk/libstdc++-v3/testsuite/util/testsuite_io.h

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/7

------------------------------------------------------------------------
On 2011-05-20T18:57:08+00:00 Jason-gcc wrote:

Fixed for 4.7.

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/8

------------------------------------------------------------------------
On 2011-07-07T21:29:33+00:00 Jason-gcc wrote:

*** Bug 47752 has been marked as a duplicate of this bug. ***

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/9

------------------------------------------------------------------------
On 2011-12-29T14:45:14+00:00 Redi wrote:

*** Bug 51699 has been marked as a duplicate of this bug. ***

Reply at: https://bugs.launchpad.net/cryptopp/+bug/915018/comments/10


** Changed in: gcc
       Status: Unknown => Fix Released

** Changed in: gcc
   Importance: Unknown => Medium

** Changed in: cryptopp
       Status: Unknown => New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/915018

Title:
  gcc 4.7.0 fixes a bug that Crypto++ 5.6.1 relies on

To manage notifications about this bug go to:
https://bugs.launchpad.net/cryptopp/+bug/915018/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to