__gnu_cxx::recursive_init_error

Section: C Library Functions (3)
Updated: Wed Apr 17 2019
Page Index
 

NAME

__gnu_cxx::recursive_init_error - Exception thrown by __cxa_guard_acquire.

6.7[stmt.dcl]/4: If control re-enters the declaration (recursively) while the object is being initialized, the behavior is undefined.

 

SYNOPSIS


Inherits std::exception.  

Public Member Functions


virtual const char * what () const _GLIBCXX_TXN_SAFE_DYN noexcept
 

Detailed Description

Exception thrown by __cxa_guard_acquire.

6.7[stmt.dcl]/4: If control re-enters the declaration (recursively) while the object is being initialized, the behavior is undefined.

Since we already have a library function to handle locking, we might as well check for this situation and throw an exception. We use the second byte of the guard variable to remember that we're in the middle of an initialization.

Definition at line 694 of file cxxabi.h.

 

Author

Generated automatically by Doxygen for libstdc++ from the source code.


 

Index

NAME
SYNOPSIS
Public Member Functions
Detailed Description
Author