10#ifndef ERS_INVALID_REFERENCE
11#define ERS_INVALID_REFERENCE
53#if ( !defined( N_ERS_ASSERT ) )
54# if ( defined( __GNUC__ ) )
55# define ERS_PRE_CHECK_PTR( p ) \
56 if ( !__builtin_constant_p( p ) ) \
57 ers::InvalidReferenceIssue::check_reference( ERS_HERE, ers::error, p, #p, \
60# define ERS_PRE_CHECK_PTR( p ) \
61 ers::InvalidReferenceIssue::check_reference( ERS_HERE, ers::error, p, #p, \
65# define ERS_PRE_CHECK_PTR( p )
74#if ( !defined( N_ERS_ASSERT ) )
75# if ( defined( __GNUC__ ) )
76# define ERS_CHECK_PTR( p ) \
77 if ( !__builtin_constant_p( p ) ) \
78 ers::InvalidReferenceIssue::check_reference( ERS_HERE, ers::error, p, #p, \
81# define ERS_CHECK_PTR( p ) \
82 ers::InvalidReferenceIssue::check_reference( ERS_HERE, ers::error, p, #p, \
86# define ERS_CHECK_PTR( p )
Source context for Issue.
static const char *const REFERENCE_C_PTR_TYPE
void pointer(const void *p)
static const char *const REFERENCE_NAME_KEY
static const char *const CLASS_NAME
static const char *const REFERENCE_VALUE_KEY
virtual const char * get_class_name() const
Get key for class (used for serialisation).
static const char *const REFERENCE_TYPE_KEY
static void check_reference(const Context &context, severity_t s, const void *pointer, const char *ptr_name, responsibility_t r)
InvalidReferenceIssue(const Context &context, severity_t s)
const std::string & message() const
Message.
Issue(const Context &context, severity_t s)
Constructor for subclasses.
enum ers::_responsibility_t responsibility_t
enum ers::_severity_t severity_t