[Bug sanitizer/92247] ‘__NR_open’ was not declared in this scope libsanitizer/sanitizer_common/sanitizer_linux compilation failed on ubuntu 18.04 WSL2

pinskia at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Oct 29 19:25:00 GMT 2019


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92247

--- Comment #9 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Yes SANITIZER_USES_CANONICAL_LINUX_SYSCALLS should be defined as 1 by default.

The comment in front of the define there is incorrect for newer kernels which
force the legacy system calls not be to defined (though they are still
implemented).

From the upstream source base:
// The AArch64 and RISC-V linux ports use the canonical syscall set as
// mandated by the upstream linux community for all new ports. Other ports
// may still use legacy syscalls.

That is why I said upstream is also broken and incorrect.


More information about the Gcc-bugs mailing list