1//===----------------------------------------------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9// <system_error>
10
11// class error_condition
12
13// void assign(int val, const error_category& cat);
14
15#include <system_error>
16#include <cassert>
17
18#include "test_macros.h"
19
20int main(int, char**)
21{
22 {
23 std::error_condition ec;
24 ec.assign(v: 6, cat: std::system_category());
25 assert(ec.value() == 6);
26 assert(ec.category() == std::system_category());
27 }
28 {
29 std::error_condition ec;
30 ec.assign(v: 8, cat: std::generic_category());
31 assert(ec.value() == 8);
32 assert(ec.category() == std::generic_category());
33 }
34
35 return 0;
36}
37

source code of libcxx/test/std/diagnostics/syserr/syserr.errcondition/syserr.errcondition.modifiers/assign.pass.cpp