Thomas Haller <thaller@xxxxxxxxxx> wrote: > static inline void *__memory_allocation_check(const char *file, unsigned line, const void *ptr) { > if (!ptr) > __memory_allocation_error(file, line); > return (void*) ptr; > } > > #define memory_allocation_check(cmd) \ > ((typeof(cmd) __memory_allocation_check(__FILE__, __LINE__, (cmd)) > > Doesn't seem to make a difference either way. We seem to be moving in circles. I suspect your agenda is to avoid repeating the existing x = alloc() if (!x) barf() pattern when adding userhandle support? If so I think its best to just add a specific ubuf alloc wrapper that can't fail (i.e. like the 'xmalloc' wrappers). Like Pablo said, I don't see any added value in providing FILE/LINE errors on stderr here. It could be as simple as exit().