33 void rewrite(
const char *will);
34 void rewrite(WVSTRING_FORMAT_DECL);
39#if !defined(__GLIBC__)
41# define wvassert(expr, args...) assert(expr)
42# define wvassert_perror(errnum) perror(errnum)
46# define wvassert(expr, args...) (__ASSERT_VOID_CAST (0))
47# define wvassert_perror(errnum) (__ASSERT_VOID_CAST (0))
51static inline void __wvcrash_leave_will()
55static inline void __wvcrash_leave_will(
const char *will)
57 wvcrash_leave_will(will);
60static inline void __wvcrash_leave_will(WVSTRING_FORMAT_DECL)
69# define wvassert(expr, args...) \
70 (__ASSERT_VOID_CAST ((expr) ? 0 : \
71 (__wvcrash_leave_will (args), \
72 (__assert_fail (__STRING(expr), __FILE__, __LINE__, \
73 __ASSERT_FUNCTION), 0))))
79# define wvassert_perror(errnum, args...) \
80 (__ASSERT_VOID_CAST (!(errnum) ? 0 : \
81 (__wvcrash_leave_will (args), \
82 (__assert_perror_fail ((errnum), __FILE__, __LINE__, \
83 __ASSERT_FUNCTION), 0))))
A WvFastString acts exactly like a WvString, but can take (const char *) strings without needing to a...
WvString is an implementation of a simple and efficient printable-string class.