VirtualBox

Changeset 95187 in vbox


Ignore:
Timestamp:
Jun 3, 2022 2:03:18 PM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
151687
Message:

iprt/setjmp-without-sigmask.h: Solaris fix and general change to only redefine stuff on BSDish systems.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/setjmp-without-sigmask.h

    r95184 r95187  
    3434#include <setjmp.h>
    3535
    36 #if defined(IN_RING3) && !defined(RT_OS_WINDOWS)
    3736/*
    38  * Glibc does these redefinitions by default, thus the need for #undef.
    39  * macOS and BSDs doesn't.  Not sure about solaris.
     37 * System V and ANSI-C setups does not by default map setjmp/longjmp to the
     38 * signal mask saving/restoring variants (Linux included).  This is mainly
     39 * an issue on BSD derivatives.
    4040 */
    41 # undef  setjmp
     41#if defined(IN_RING3) \
     42 && (   defined(RT_OS_DARWIN) \
     43     || defined(RT_OS_DRAGONFLY)
     44     || defined(RT_OS_FREEBSD) \
     45     || defined(RT_OS_NETBSD) \
     46     || defined(RT_OS_OPENBSD) )
    4247# define setjmp  _setjmp
    43 # undef  longjmp
    4448# define longjmp _longjmp
    4549#endif
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette