[variant.bad.access]

# 22 General utilities library [[utilities]](./#utilities)

## 22.6 Variants [[variant]](variant#bad.access)

### 22.6.11 Class bad_variant_access [variant.bad.access]

namespace std {class bad_variant_access : public exception {public:// see [[exception]](exception "17.9.3 Class exception") for the specification of the special member functionsconstexpr const char* what() const noexcept override; };}

[1](#1)

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

Objects of type bad_variant_access are thrown to report invalid
accesses to the value of a variant object[.](#1.sentence-1)

[ð](#lib:what,bad_variant_access)

`constexpr const char* what() const noexcept override;
`

[2](#2)

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

*Returns*: An implementation-defined ntbs,
which during constant evaluation is encoded with
the ordinary literal encoding ([[lex.ccon]](lex.ccon "5.13.3 Character literals"))[.](#2.sentence-1)
