Skip to content

Missing noreturn on err family of functions #7204

@D0ntPanic

Description

@D0ntPanic

Version and Platform (required):

  • Binary Ninja Version: 5.2.8012
  • Edition: Ultimate
  • OS: macOS
  • OS Version: 15.6
  • CPU Architecture: M3

Bug Description:
The err family of libc functions are not marked as noreturn. Compilers assume it won't return and sometimes don't emit valid code after the call.

Steps To Reproduce:
Open up the x86_64 slice of /bin/ls from macOS 15.6. The _start function is in guided analysis mode because of continuing analysis after a call to _err.

Expected Behavior:
Disassembly should stop at calls to the err family of libc functions by adding __noreturn to them, preventing bad disassembly.

Metadata

Metadata

Assignees

Labels

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions