30 lines
889 B
C++
30 lines
889 B
C++
|
//===----------------------------------------------------------------------===//
|
||
|
//
|
||
|
// The LLVM Compiler Infrastructure
|
||
|
//
|
||
|
// This file is dual licensed under the MIT and the University of Illinois Open
|
||
|
// Source Licenses. See LICENSE.TXT for details.
|
||
|
//
|
||
|
//===----------------------------------------------------------------------===//
|
||
|
|
||
|
// <system_error>
|
||
|
|
||
|
// class error_category
|
||
|
|
||
|
// const error_category& system_category();
|
||
|
|
||
|
#include <system_error>
|
||
|
#include <cassert>
|
||
|
#include <string>
|
||
|
|
||
|
int main()
|
||
|
{
|
||
|
const std::error_category& e_cat1 = std::system_category();
|
||
|
std::error_condition e_cond = e_cat1.default_error_condition(5);
|
||
|
assert(e_cond.value() == 5);
|
||
|
assert(e_cond.category() == std::generic_category());
|
||
|
e_cond = e_cat1.default_error_condition(500);
|
||
|
assert(e_cond.value() == 500);
|
||
|
assert(e_cond.category() == std::system_category());
|
||
|
}
|