• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // RUN: %clang_cc1 -fsyntax-only -verify %s
2 
3 // PR5908
4 template <typename Iterator>
Test(Iterator it)5 void Test(Iterator it) {
6   *(it += 1);
7 }
8 
9 namespace PR6045 {
10   template<unsigned int r>
11   class A
12   {
13     static const unsigned int member = r;
14     void f();
15   };
16 
17   template<unsigned int r>
18   const unsigned int A<r>::member;
19 
20   template<unsigned int r>
f()21   void A<r>::f()
22   {
23     unsigned k;
24     (void)(k % member);
25   }
26 }
27 
28 namespace PR7198 {
29   struct A
30   {
~APR7198::A31     ~A() { }
32   };
33 
34   template<typename T>
35   struct B {
36     struct C : A {};
fPR7198::B37     void f()
38     {
39       C c = C();
40     }
41   };
42 }
43 
44 namespace PR7724 {
myMethod()45   template<typename OT> int myMethod()
46   { return 2 && sizeof(OT); }
47 }
48 
49 namespace test4 {
addressof(T & v)50   template <typename T> T *addressof(T &v) {
51     return reinterpret_cast<T*>(
52              &const_cast<char&>(reinterpret_cast<const volatile char &>(v)));
53   }
54 }
55 
56 namespace test5 {
57   template <typename T> class chained_map {
58     int k;
lookup() const59     void lookup() const {
60       int &v = (int &)k;
61     }
62   };
63 }
64 
65 namespace PR8795 {
test(_CharT t)66   template <class _CharT> int test(_CharT t)
67   {
68     int data [] = {
69       sizeof(_CharT) > sizeof(char)
70     };
71     return data[0];
72   }
73 }
74