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)
Tue, Apr 22, 3:56 AM
Unknown Object (File)
Sat, Apr 19, 11:33 PM
Unknown Object (File)
Mon, Apr 14, 4:39 PM
Unknown Object (File)
Tue, Apr 8, 7:33 PM
Unknown Object (File)
Mar 19 2025, 12:47 PM
Unknown Object (File)
Mar 19 2025, 12:47 PM
Unknown Object (File)
Mar 19 2025, 9:31 AM
Unknown Object (File)
Mar 18 2025, 1:01 PM

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