Home | Libraries | People | FAQ | More |
BOOST_CONTRACT_PERMISSIVE — Disable some compile-time errors generated by this library (undefined by default).
// In header: <boost/contract/core/config.hpp>
BOOST_CONTRACT_PERMISSIVE
Defining this macro disables a number of static checks and related compile-time errors generated by this library, for example:
The static invariant member function named as BOOST_CONTRACT_STATIC_INVARIANT_FUNC
must be declared static
.
Non-static invariant member functions named as BOOST_CONTRACT_INVARIANT_FUNC
must be declared either const
, const volatile
, or volatile const
.
Derived classes that program contracts for one or more public function overrides via boost::contract::public_function
must also define the BOOST_CONTRACT_BASE_TYPES
typedef
.
In general, it is not recommended to define this macro because these compile-time checks can guard against misuses of this library.
See Also:
Class Invariants, Base Classes