Project

General

Profile

Actions

Bug #13651

closed

libucb: cast between incompatible function types

Added by Toomas Soome about 1 year ago. Updated about 1 year 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 on SPARC with gcc 10:

sys/signal.c: In function 'ucbsigvec':
sys/signal.c:483:7: error: cast between incompatible function types from 'void (*)(int,  int,  struct sigcontext *, char *)' to 'void (*)(int)' [-Werror=cast-function-type]
  483 |   if ((void (*)(int))nhandler != SIG_DFL &&
      |       ^
sys/signal.c:484:7: error: cast between incompatible function types from 'void (*)(int,  int,  struct sigcontext *, char *)' to 'void (*)(int)' [-Werror=cast-function-type]
  484 |       (void (*)(int))nhandler != SIG_IGN) {
      |       ^
sys/signal.c:486:22: error: cast between incompatible function types from 'void (*)(int,  siginfo_t *, ucontext_t *)' {aka 'void (*)(int,  struct siginfo *, struct ucontext *)'} to 'void (*)(int)' [-Werror=cast-function-type]
  486 |    nact.sa_handler = (void (*)(int))ucbsigvechandler;
      |                      ^
sys/signal.c:488:22: error: cast between incompatible function types from 'void (*)(int,  int,  struct sigcontext *, char *)' to 'void (*)(int)' [-Werror=cast-function-type]
  488 |    nact.sa_handler = (void (*)(int))nhandler;
      |                      ^
sys/signal.c: In function 'ucbsignal':
sys/signal.c:569:19: error: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int,  int,  struct sigcontext *, char *)' [-Werror=cast-function-type]
  569 |  nsv.sv_handler = (void (*) (int, int, struct sigcontext *, char *)) a;
      |                   ^
cc1: all warnings being treated as errors
*** Error code 1
dmake: Fatal error: Command failed for target `pics/signal.o'
Current working directory /code/illumos-gate/usr/src/ucblib/libucb/sparc

Testing done: build, also disassembly showed no change.

Actions #1

Updated by Toomas Soome about 1 year ago

  • Description updated (diff)
Actions #2

Updated by Electric Monk about 1 year ago

  • Gerrit CR set to 1355
Actions #3

Updated by Toomas Soome about 1 year ago

  • Description updated (diff)
Actions #4

Updated by Electric Monk about 1 year ago

  • Status changed from In Progress to Closed
  • % Done changed from 90 to 100

git commit fd8be61dc48514ff8e3bb97fdb04972e2765a6da

commit  fd8be61dc48514ff8e3bb97fdb04972e2765a6da
Author: Toomas Soome <tsoome@me.com>
Date:   2021-03-30T20:28:48.000Z

    13651 libucb: cast between incompatible function types
    Reviewed by: Robert Mustacchi <rm@fingolfin.org>
    Approved by: Dan McDonald <danmcd@joyent.com>

Actions

Also available in: Atom PDF