Page MenuHomeFreeBSD

include: add a userland version of __assert_unreachable
ClosedPublic

Authored by kevans on Dec 14 2024, 5:26 AM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Jan 22, 11:12 PM
Unknown Object (File)
Wed, Jan 14, 12:46 PM
Unknown Object (File)
Sat, Jan 10, 4:32 PM
Unknown Object (File)
Tue, Dec 30, 8:30 AM
Unknown Object (File)
Dec 18 2025, 3:16 PM
Unknown Object (File)
Dec 18 2025, 9:40 AM
Unknown Object (File)
Dec 5 2025, 5:02 PM
Unknown Object (File)
Nov 27 2025, 1:08 AM

Details

Summary

The kernel has had a version of this since
c79cee71363d ("kernel: provide panicky version of unreachable"), and
userland can benefit from the same.
unreachable is largely
inadequate because it's *not* an assertion of any sort, so we're not
really alerted to a problem that we could've anticipated.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 61155
Build 58039: arc lint + arc unit

Event Timeline

kevans created this revision.
This revision is now accepted and ready to land.Dec 14 2024, 5:32 AM

C23 added unreachable () to <stddef.h>. Wouldn't that be preferable to the leading __ for userland?

C23 added unreachable () to <stddef.h>. Wouldn't that be preferable to the leading __ for userland?

My can't assume C23 in system headers, so we'd end up shimming it out with an __unreachable in <sys/cdefs.h> anyways to make it usable