]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr_neg.cc
Update Copyright years for files modified in 2011 and/or 2012.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / tr1 / 2_general_utilities / shared_ptr / assign / shared_ptr_neg.cc
CommitLineData
805838c9 1// { dg-do compile }
2
71e45bc2 3// Copyright (C) 2005, 2008, 2009, 2011 Free Software Foundation
cf8910b0 4//
5// This file is part of the GNU ISO C++ Library. This library is free
6// software; you can redistribute it and/or modify it under the
7// terms of the GNU General Public License as published by the
6bc9506f 8// Free Software Foundation; either version 3, or (at your option)
cf8910b0 9// any later version.
10
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14// GNU General Public License for more details.
15
16// You should have received a copy of the GNU General Public License along
6bc9506f 17// with this library; see the file COPYING3. If not see
18// <http://www.gnu.org/licenses/>.
cf8910b0 19
20// TR1 2.2.2 Template class shared_ptr [tr.util.smartptr.shared]
21
e63793af 22#include <tr1/memory>
cf8910b0 23#include <testsuite_hooks.h>
24
25struct A { };
26struct B { };
27
28// 2.2.3.3 shared_ptr assignment [tr.util.smartptr.shared.assign]
29
30// Assignment from incompatible shared_ptr<Y>
31int
32test01()
33{
34 bool test __attribute__((unused)) = true;
35
36 std::tr1::shared_ptr<A> a;
37 std::tr1::shared_ptr<B> b;
38 a = b; // { dg-error "here" }
39
40 return 0;
41}
42
43int
44main()
45{
46 test01();
47 return 0;
48}
5359d2eb 49// { dg-error "In instantiation" "" { target *-*-* } 0 }
cf8910b0 50// { dg-error "cannot convert" "" { target *-*-* } 0 }
8ce59854 51// { dg-error "required from" "" { target *-*-* } 0 }