pointer_to.pass.cpp revision bc8d3f97eb5c958007f2713238472e0c1c8fe02c
1//===----------------------------------------------------------------------===//
2//
3// ��������������������The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10// <memory>
11
12// template <class T>
13// struct pointer_traits<T*>
14// {
15//     static pointer pointer_to(<details>);
16//     ...
17// };
18
19#include <memory>
20#include <cassert>
21
22int main()
23{
24    {
25        int i = 0;
26        int* a = std::pointer_traits<int*>::pointer_to(i);
27        assert(a = &i);
28    }
29    {
30        (std::pointer_traits<void*>::element_type)0;
31    }
32}
33