mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-22 11:31:05 +08:00
re PR c++/50344 (friend declaration confused by const qualifier)
/cp 2011-09-22 Jonathan Wakely <jwakely.gcc@gmail.com> Paolo Carlini <paolo.carlini@oracle.com> PR c++/50344 * friend.c (make_friend_class): cv-qualification is ok in a friend declaration. /testsuite 2011-09-22 Jonathan Wakely <jwakely.gcc@gmail.com> Paolo Carlini <paolo.carlini@oracle.com> PR c++/50344 * g++.dg/template/friend52.C: New. Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com> From-SVN: r179088
This commit is contained in:
parent
e7dd5b57c4
commit
056a392778
@ -1,3 +1,10 @@
|
||||
2011-09-22 Jonathan Wakely <jwakely.gcc@gmail.com>
|
||||
Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
||||
PR c++/50344
|
||||
* friend.c (make_friend_class): cv-qualification is ok in a
|
||||
friend declaration.
|
||||
|
||||
2011-09-21 Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
||||
PR c++/50454
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Help friends in C++.
|
||||
Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
|
||||
2007, 2008, 2010 Free Software Foundation, Inc.
|
||||
2007, 2008, 2010, 2011 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GCC.
|
||||
|
||||
@ -237,6 +237,8 @@ make_friend_class (tree type, tree friend_type, bool complain)
|
||||
return;
|
||||
}
|
||||
|
||||
friend_type = cv_unqualified (friend_type);
|
||||
|
||||
if (friend_depth)
|
||||
/* If the TYPE is a template then it makes sense for it to be
|
||||
friends with itself; this means that each instantiation is
|
||||
|
@ -1,3 +1,9 @@
|
||||
2011-09-22 Jonathan Wakely <jwakely.gcc@gmail.com>
|
||||
Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
||||
PR c++/50344
|
||||
* g++.dg/template/friend52.C: New.
|
||||
|
||||
2011-09-22 Richard Sandiford <richard.sandiford@linaro.org>
|
||||
|
||||
* gcc.target/arm/cmp-1.c: New test.
|
||||
|
17
gcc/testsuite/g++.dg/template/friend52.C
Normal file
17
gcc/testsuite/g++.dg/template/friend52.C
Normal file
@ -0,0 +1,17 @@
|
||||
// PR c++/50344
|
||||
// { dg-options "" }
|
||||
|
||||
template <typename T> class C
|
||||
{
|
||||
friend T;
|
||||
int i;
|
||||
};
|
||||
|
||||
struct S
|
||||
{
|
||||
int f()
|
||||
{
|
||||
C<const S> c;
|
||||
return c.i;
|
||||
}
|
||||
};
|
Loading…
x
Reference in New Issue
Block a user