mirror of git://gcc.gnu.org/git/gcc.git
PR c++/51027 - accepts alias-declaration without ';'
gcc/cp/ * parser.c (cp_parser_alias_declaration): Require ';' at the end of the declaration. libstdc++-v3/ * include/ext/pointer.h (rebind): Append missing ';'. gcc/testsuite * g++.dg/cpp0x/alias-decl-12.C: New test. * g++.dg/ext/alias-decl-attr4.C: Append missing ';'. From-SVN: r181195
This commit is contained in:
parent
c2b32b0fd4
commit
bd0424fa93
|
|
@ -1,3 +1,9 @@
|
|||
2011-11-09 Dodji Seketeli <dodji@redhat.com>
|
||||
|
||||
PR c++/51027
|
||||
* parser.c (cp_parser_alias_declaration): Require ';' at the end
|
||||
of the declaration.
|
||||
|
||||
2011-11-09 Dodji Seketeli <dodji@redhat.com>
|
||||
|
||||
PR debug/51032
|
||||
|
|
|
|||
|
|
@ -14942,6 +14942,7 @@ cp_parser_alias_declaration (cp_parser* parser)
|
|||
cp_parser_require (parser, CPP_EQ, RT_EQ);
|
||||
|
||||
type = cp_parser_type_id (parser);
|
||||
cp_parser_require (parser, CPP_SEMICOLON, RT_SEMICOLON);
|
||||
|
||||
/* A typedef-name can also be introduced by an alias-declaration. The
|
||||
identifier following the using keyword becomes a typedef-name. It has
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
2011-11-09 Dodji Seketeli <dodji@redhat.com>
|
||||
|
||||
PR c++/51027
|
||||
* g++.dg/cpp0x/alias-decl-12.C: New test.
|
||||
* g++.dg/ext/alias-decl-attr4.C: Append missing ';'.
|
||||
|
||||
2011-11-09 Dodji Seketeli <dodji@redhat.com>
|
||||
|
||||
PR debug/51032
|
||||
|
|
|
|||
|
|
@ -0,0 +1,4 @@
|
|||
// Origin: PR c++/51027
|
||||
// { dg-options "-std=c++0x" }
|
||||
|
||||
using INT = int // { dg-error "expected|;|at end of input" }
|
||||
|
|
@ -11,7 +11,7 @@ template <class T> struct A
|
|||
template < typename Val > struct S
|
||||
{
|
||||
using vector_type __attribute__((vector_size(16))) =
|
||||
typename A<Val>::type
|
||||
typename A<Val>::type;
|
||||
typedef Val vector_type2 __attribute__((vector_size(16)));
|
||||
int pr_size() { return sizeof(vector_type); }
|
||||
int pr_size2() { return sizeof(vector_type2); }
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
2011-11-09 Dodji Seketeli <dodji@redhat.com>
|
||||
|
||||
PR c++/51027
|
||||
* include/ext/pointer.h (rebind): Append missing ';'.
|
||||
|
||||
2011-11-09 Jonathan Wakely <jwakely.gcc@gmail.com>
|
||||
|
||||
* include/bits/stl_vector.h (vector::_Alloc_traits): Make private.
|
||||
|
|
|
|||
|
|
@ -579,7 +579,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
template<typename _Up>
|
||||
using rebind = typename __gnu_cxx::_Pointer_adapter<
|
||||
typename pointer_traits<_Storage_policy>::rebind<_Up>>
|
||||
typename pointer_traits<_Storage_policy>::rebind<_Up>>;
|
||||
|
||||
static pointer pointer_to(typename pointer::reference __r) noexcept
|
||||
{ return pointer(std::addressof(__r)); }
|
||||
|
|
|
|||
Loading…
Reference in New Issue