Hi Thomas, On Tue, Mar 28, 2023 at 09:07:35PM +0000, Thomas Weißschuh wrote: > Most of the code was migrated to C99-conformant __asm__ statements > before. It seems string.h was missed. > > Fix string.h and also validate during build that nolibc stays within > C99. I'm all for improving portability, however I have a concern with building the test case with -std=c99 which is that it might hide some c99-only stuff that we'd introduce by accident in the nolibc's code, and I'd rather not do that because it will mean changing build options for some external programs using it if it happens. However I totally agree with you that we need to make sure that there's no build issues with c99 compilers. Modern compilers are c99-compatible but generally come with GNU extensions and I understand why you're interested in switching to std=c99 in order to drop some of these like "asm". Should we have two build targets, the default one and a c99 one ? Maybe. The build is so small and quick that nobody will care, so we could definitely imagine building the two versions. Maybe you have a better idea ? Thanks, Willy