]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/27_io/types/3.cc
Update copyright years in libstdc++-v3/
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 27_io / types / 3.cc
CommitLineData
aa118a03 1// Copyright (C) 2003-2014 Free Software Foundation, Inc.
4c4809c1
BK
2//
3// This file is part of the GNU ISO C++ Library. This library is free
4// software; you can redistribute it and/or modify it under the
5// terms of the GNU General Public License as published by the
748086b7 6// Free Software Foundation; either version 3, or (at your option)
4c4809c1
BK
7// any later version.
8
9// This library is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12// GNU General Public License for more details.
13
14// You should have received a copy of the GNU General Public License along
748086b7
JJ
15// with this library; see the file COPYING3. If not see
16// <http://www.gnu.org/licenses/>.
4c4809c1
BK
17
18// 27.4.3 streamoff
19
20#include <ios>
21#include <limits>
22#include <testsuite_hooks.h>
23
24void check(std::streamsize n)
25{
26 bool test __attribute__((unused)) = true;
27
28 VERIFY( std::streamsize(std::streamoff(n)) == n );
29}
30
31void test03()
32{
33 check(0);
34 check(-1);
35 check(1);
36 check(std::numeric_limits<std::streamsize>::min());
37 check(std::numeric_limits<std::streamsize>::min() + 1);
38 check(std::numeric_limits<std::streamsize>::min() / 2);
39 check(std::numeric_limits<std::streamsize>::max());
40 check(std::numeric_limits<std::streamsize>::max() - 1);
41 check(std::numeric_limits<std::streamsize>::max() / 2);
42}
43
44int main()
45{
46 test03();
47 return 0;
48}