[libc] Make static_assert() available via assert.h

Expose static_assert() via assert.h and migrate link-time assertions
to build-time assertions where possible.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown
2024-01-16 12:23:02 +00:00
parent 6ca597eee9
commit 6d29415c89
5 changed files with 15 additions and 7 deletions

View File

@@ -55,6 +55,15 @@ assert_printf ( const char *fmt, ... ) asm ( "printf" );
} \
} while ( 0 )
/**
* Assert a condition at build time
*
* If the compiler cannot prove that the condition is true, the build
* will fail with an error message.
*/
#undef static_assert
#define static_assert(x) _Static_assert( x, #x )
/**
* Assert a condition at link-time.
*