toupper.pass.cpp revision f5256e16dfc425c1d466f6308d4026d529ce9e0b
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// <locale>
11
12// template <class charT> charT toupper(charT c, const locale& loc);
13
14#include <locale>
15#include <cassert>
16
17int main()
18{
19    std::locale l;
20    assert(std::toupper(' ', l) == ' ');
21    assert(std::toupper('<', l) == '<');
22    assert(std::toupper('\x8', l) == '\x8');
23    assert(std::toupper('A', l) == 'A');
24    assert(std::toupper('a', l) == 'A');
25    assert(std::toupper('z', l) == 'Z');
26    assert(std::toupper('3', l) == '3');
27    assert(std::toupper('.', l) == '.');
28    assert(std::toupper('f', l) == 'F');
29    assert(std::toupper('9', l) == '9');
30    assert(std::toupper('+', l) == '+');
31}
32