[runtime.error]

# 19 Diagnostics library [[diagnostics]](./#diagnostics)

## 19.2 Exception classes [[std.exceptions]](std.exceptions#runtime.error)

### 19.2.8 Class runtime_error [runtime.error]

[ð](#lib:runtime_error)

namespace std {class runtime_error : public exception {public:constexpr explicit runtime_error(const string& what_arg); constexpr explicit runtime_error(const char* what_arg); };}

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/diagnostics.tex#L299)

The classruntime_error defines the type of objects thrown as exceptions to report errors presumably detectable only
when the program executes[.](#1.sentence-1)

[ð](#lib:runtime_error,constructor)

`constexpr runtime_error(const string& what_arg);
`

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/diagnostics.tex#L311)

*Postconditions*: strcmp(what(), what_arg.c_str()) == 0[.](#2.sentence-1)

[ð](#lib:runtime_error,constructor_)

`constexpr runtime_error(const char* what_arg);
`

[3](#3)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/diagnostics.tex#L322)

*Postconditions*: strcmp(what(), what_arg) == 0[.](#3.sentence-1)
