* of the buffer.
*/
#define fr_sbuff_init(_out, _start, _len_or_end) \
+_fr_sbuff_init(_out, _start, \
_Generic((_len_or_end), \
- size_t : _fr_sbuff_init(_out, _start, (char const *)(_start) + ((size_t)(_len_or_end) - 1), true), \
- long : _fr_sbuff_init(_out, _start, (char const *)(_start) + ((size_t)(_len_or_end) - 1), true), \
- int : _fr_sbuff_init(_out, _start, (char const *)(_start) + ((size_t)(_len_or_end) - 1), true), \
- char * : _fr_sbuff_init(_out, _start, (char const *)(_len_or_end), false), \
- char const * : _fr_sbuff_init(_out, _start, (char const *)(_len_or_end), true) \
-)
+ size_t : (char const *)(_start) + ((size_t)(_len_or_end) - 1), \
+ long : (char const *)(_start) + ((size_t)(_len_or_end) - 1), \
+ int : (char const *)(_start) + ((size_t)(_len_or_end) - 1), \
+ char * : (char const *)(_len_or_end), \
+ char const * : (char const *)(_len_or_end) \
+), \
+_Generic((_start), \
+ char * : false, \
+ char const * : true \
+))
/** Initialise a special sbuff which automatically reads in more data as the buffer is exhausted
*