]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc
Use effective-target instead of -std options
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 20_util / shared_ptr / assign / shared_ptr_neg.cc
CommitLineData
52066eae 1// { dg-do compile { target c++11 } }
aaf0ca6f 2
818ab71a 3// Copyright (C) 2005-2016 Free Software Foundation, Inc.
aaf0ca6f
JW
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
748086b7 8// Free Software Foundation; either version 3, or (at your option)
aaf0ca6f
JW
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
748086b7
JJ
17// with this library; see the file COPYING3. If not see
18// <http://www.gnu.org/licenses/>.
aaf0ca6f
JW
19
20// 20.6.6.2 Template class shared_ptr [util.smartptr.shared]
21
a40cc81f 22#include <memory>
aaf0ca6f
JW
23#include <testsuite_hooks.h>
24
25struct A { };
26struct B { };
27
28// 20.6.6.2.3 shared_ptr assignment [util.smartptr.shared.assign]
29
30// Assignment from incompatible shared_ptr<Y>
31int
32test01()
33{
34 bool test __attribute__((unused)) = true;
35
36 std::shared_ptr<A> a;
37 std::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}
6573e8a0 49// { dg-error "In instantiation" "" { target *-*-* } 0 }
aaf0ca6f 50// { dg-error "cannot convert" "" { target *-*-* } 0 }
3ff60975 51// { dg-error "required from" "" { target *-*-* } 0 }