VirtualBox

Changeset 107247 in vbox for trunk/src/VBox/Runtime/r0drv


Ignore:
Timestamp:
Dec 6, 2024 5:50:03 PM (6 weeks ago)
Author:
vboxsync
Message:

iprt/the-solaris-kernel.h: Pairfait workaround attempt.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/r0drv/solaris/the-solaris-kernel.h

    r106061 r107247  
    4141#endif
    4242
     43#if defined(VBOX_WITH_PARFAIT) && defined(__INT_FAST16_MAX__)
     44/* HACK ALERT: Workaround for duplicate [u]int_fast16_t conflicting due to 'incorrect'
     45               __INT_FAST16_TYPE__ and __UINT_FAST16_TYPE__ definitions in pairfait.
     46               The types are usually 'int' and 'unsigned int', which the system headers
     47               assume, thus we get a conflict when the pairfait compiler redefines to
     48               a narrow variant.  Workaround, try ignore the system types and use the
     49               compiler ones...  See also iprt/types.h. */
     50# if (__INT_FAST16_MAX__) == 32767
     51#  define int_fast16_t  hacked_int_fast16_t
     52#  define uint_fast16_t hacked_uint_fast16_t
     53#  include <sys/int_types.h>
     54# endif
     55#endif
    4356#include <sys/kmem.h>
    4457#include <sys/types.h>
     
    7588
    7689#undef u /* /usr/include/sys/user.h:249:1 is where this is defined to (curproc->p_user). very cool. */
     90#if defined(VBOX_WITH_PARFAIT) && defined(__INT_FAST16_MAX__) && defined(int_fast16_t) && defined(uint_fast16_t) /* see above */
     91# undef  int_fast16_t
     92# undef  uint_fast16_t
     93#endif
    7794
    7895#include <iprt/cdefs.h>
Note: See TracChangeset for help on using the changeset viewer.

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