Eric Wong <e@xxxxxxxxx> wrote: > Patrick Steinhardt <ps@xxxxxx> wrote: > > We shouldn't use asserts, but rather use `BUG()` statements in our > > codebase. `assert()`s don't help users that run production builds. > > OK. Thinking about this more, I still favor assert() in common code paths since it's only meant to be used during development and later removed or neutralized (via -DNDEBUG). IOW, I treat assert() as scaffolding that can/should later be removed once the code is proven to work well. We also have plenty of existing asserts in our codebase. Furthermore, assert() is also a well known API which reduces the learning curve for drive-by hackers (I still consider myself a drive-by since my I do minimal C).