]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/26_numerics/adjacent_difference/1.cc
Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 26_numerics / adjacent_difference / 1.cc
CommitLineData
748086b7 1// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
fa52081d 2// Free Software Foundation, Inc.
02d92e3b
SW
3//
4// This file is part of the GNU ISO C++ Library. This library is free
5// software; you can redistribute it and/or modify it under the
6// terms of the GNU General Public License as published by the
748086b7 7// Free Software Foundation; either version 3, or (at your option)
02d92e3b
SW
8// any later version.
9
10// This library is distributed in the hope that it will be useful,
11// but WITHOUT ANY WARRANTY; without even the implied warranty of
12// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13// GNU General Public License for more details.
14
15// You should have received a copy of the GNU General Public License along
748086b7
JJ
16// with this library; see the file COPYING3. If not see
17// <http://www.gnu.org/licenses/>.
02d92e3b 18
02d92e3b
SW
19// 26.4.4 [lib.adjacent.difference]
20
21#include <algorithm>
22#include <numeric>
1ecba09e 23#include <testsuite_hooks.h>
02d92e3b
SW
24
25int A[] = {1, 4, 9, 16, 25, 36, 49, 64, 81, 100};
26int B[] = {1, 3, 5, 7, 9, 11, 13, 15, 17, 19};
27const int N = sizeof(A) / sizeof(int);
28
29void
30test01()
31{
1ecba09e 32 bool test __attribute__((unused)) = true;
02d92e3b 33
1ecba09e 34 int D[N];
02d92e3b 35
1ecba09e
PC
36 std::adjacent_difference(A, A + N, D);
37 VERIFY( std::equal(D, D + N, B) );
02d92e3b
SW
38}
39
40int
11f10e6b 41main()
02d92e3b 42{
fa52081d
PC
43 test01();
44 return 0;
02d92e3b 45}