Project

General

Profile

Actions

Bug #12151

closed

libc: specifies less restrictive attribute than its target

Added by Toomas Soome almost 2 years ago. Updated almost 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
lib - userland libraries
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

Build errors with gcc 9:

    cc1: error: '_siglongjmp' specifies less restrictive attribute than its target 'siglongjmp': 'noreturn' [-Werror=missing-attributes]
    ../i386/gen/siglongjmp.c:40:1: note: '_siglongjmp' target declared here
       40 | siglongjmp(sigjmp_buf env, int val)
          | ^~~~~~~~~~

    cc1: error: '_thr_exit' specifies less restrictive attribute than its target 'thr_exit': 'noreturn' [-Werror=missing-attributes]
    ../port/threads/thr.c:988:1: note: '_thr_exit' target declared here
      988 | thr_exit(void *status)
          | ^~~~~~~~
    cc1: all warnings being treated as errors

The weak symbols are not attributed accordingly and compiler is warning us about the fact.

Testing done: build/install/boot.

with wsdiff:
libc/i386_hwcap3/pics/siglongjmp.o
NOTE: ELF .debug_str difference detected.

libc/amd64/pics/siglongjmp.o
NOTE: ELF .rela.debug_line difference detected.

libc/i386_hwcap2/pics/siglongjmp.o
NOTE: ELF .debug_str difference detected.

libc/i386/pics/siglongjmp.o
NOTE: ELF .debug_str difference detected.

libc/i386_hwcap1/pics/siglongjmp.o
NOTE: ELF .debug_str difference detected.

unfortunately the build in different branches seems to cause debug section differences in many (all?) files, but still we only do see notes about .debug_str differences.


Related issues

Related to illumos gate - Bug #13682: libc: '_getcontext' specifies less restrictive attribute than its targetClosedToomas Soome

Actions
Actions

Also available in: Atom PDF