Clean up some minor white space issues in trans-decl.c and trans-expr.c
[official-gcc.git] / gcc / testsuite / g++.dg / lookup / using46.C
blob6f0f5bca09022a0c2e9b5ca6d15cda5543f73104
1 // PR c++/51141
2 // { dg-do compile }
3 // { dg-options "-fpermissive -w -Werror" }
5 typedef int size_t;
6 template < size_t, size_t > struct AlignedBuffer {};
8 template < typename > class VectorBufferBase
10 public:
11     allocateBuffer (size_t) {
12     }
13     buffer () {
14     }
15     *m_buffer;
16     size_t m_capacity;
19 template < typename T, size_t > class VectorBuffer:VectorBufferBase < T >
21     typedef VectorBufferBase < T > Base;
23 public:
24     VectorBuffer () {
25     }
26     allocateBuffer (size_t) {
27         m_capacity = 0;
28     }
29     Base::buffer;
30     Base::m_buffer;
31     Base::m_capacity;
32     size_t m_inlineBufferSize;
34     AlignedBuffer < 0, __alignof__ (T) > m_inlineBuffer;
37 template < typename T, size_t > class Vector
39     typedef VectorBuffer < T,
40             0 > Buffer;
41 public:
42     void shrinkCapacity (size_t);
44     clear () {
45         shrinkCapacity (0);
46     }
47     Buffer m_buffer;
50 template < typename T, size_t inlineCapacity > void Vector < T,
51          inlineCapacity >::shrinkCapacity (size_t)
53     m_buffer.allocateBuffer (0);
56 struct PatternDisjunction;
57 struct YarrPattern {
58     reset () {
59         m_disjunctions.clear ();
60     }
61     Vector < PatternDisjunction *, 0 > m_disjunctions;