In kernel mode, an application must include vxWorks.h before any other system header, this patch adds exactly that to the test that were failing due to a missing declaration that was found in vxWorks.h.
Regstrapped on x86_64-linux-gnu, and tested with -x-arm-wrs-vxworks7r2. Ok to install? from Corentin Gay <g...@adacore.com> for gcc/testsuite/ChangeLog * gcc.c-torture/execute/ieee/fp-cmp-1.c: Adds conditional include directive for VxWorks kernel mode. * gcc.c-torture/execute/ieee/fp-cmp-2.c: Likewise. * gcc.c-torture/execute/ieee/fp-cmp-3.c: Likewise. * gcc.c-torture/execute/pr56982.c: Likewise. * gcc.dg/vect/tree-vect.h: Add conditional #include of base vxWorks header file required before inclusion of other system header file, here signal.h. * gcc.dg/c99-stdint-1.c: Likewise. * gcc.dg/c99-stdint-2.c: Likewise. * gcc.dg/c99-stdint-5.c: Likewise. * gcc.dg/declspec-18.c: Likewise. * gcc.dg/pr57287-2.c: Likewise. * gcc.dg/pr57287.c: Likewise. * gcc.dg/pr59920-1.c: Likewise. * gcc.dg/pr63748.c: Likewise. * gcc.dg/pr78582.c: Likewise. * gcc.dg/setjmp-1.c: Likewise. * gcc.dg/setjmp-3.c: Likewise. * gcc.dg/setjmp-4.c: Likewise. * gcc.dg/setjmp-5.c: Likewise. * gcc.dg/setjmp-6.c: Likewise. * gcc.dg/stdint-width-1.c: Likewise. * gcc.dg/torture/pr48542.c: Likewise. * gcc.dg/torture/pr59993.c: Likewise. * gcc.dg/torture/pr63738.c: Likewise. * gcc.dg/torture/pr64728.c: Likewise. * gcc.dg/torture/pr66101.c: Likewise. * gcc.dg/torture/stackalign/setjmp-3.c: Likewise. * gcc.dg/torture/stackalign/setjmp-4.c: Likewise. --- .../gcc.c-torture/execute/ieee/fp-cmp-1.c | 6 ++++++ .../gcc.c-torture/execute/ieee/fp-cmp-2.c | 7 +++++++ .../gcc.c-torture/execute/ieee/fp-cmp-3.c | 7 +++++++ gcc/testsuite/gcc.c-torture/execute/pr56982.c | 7 +++++++ gcc/testsuite/gcc.dg/c99-stdint-1.c | 6 ++++++ gcc/testsuite/gcc.dg/c99-stdint-2.c | 7 +++++++ gcc/testsuite/gcc.dg/c99-stdint-5.c | 6 ++++++ gcc/testsuite/gcc.dg/declspec-18.c | 6 ++++++ gcc/testsuite/gcc.dg/pr57287-2.c | 6 ++++++ gcc/testsuite/gcc.dg/pr57287.c | 6 ++++++ gcc/testsuite/gcc.dg/pr59920-1.c | 6 ++++++ gcc/testsuite/gcc.dg/pr63748.c | 6 ++++++ gcc/testsuite/gcc.dg/pr78582.c | 6 ++++++ gcc/testsuite/gcc.dg/setjmp-1.c | 6 ++++++ gcc/testsuite/gcc.dg/setjmp-3.c | 6 ++++++ gcc/testsuite/gcc.dg/setjmp-4.c | 6 ++++++ gcc/testsuite/gcc.dg/setjmp-5.c | 6 ++++++ gcc/testsuite/gcc.dg/setjmp-6.c | 6 ++++++ gcc/testsuite/gcc.dg/stdint-width-1.c | 14 +++++++++++++- gcc/testsuite/gcc.dg/torture/pr48542.c | 6 ++++++ gcc/testsuite/gcc.dg/torture/pr59993.c | 6 ++++++ gcc/testsuite/gcc.dg/torture/pr63738.c | 6 ++++++ gcc/testsuite/gcc.dg/torture/pr64728.c | 6 ++++++ gcc/testsuite/gcc.dg/torture/pr66101.c | 6 ++++++ gcc/testsuite/gcc.dg/torture/stackalign/setjmp-3.c | 6 ++++++ gcc/testsuite/gcc.dg/torture/stackalign/setjmp-4.c | 6 ++++++ gcc/testsuite/gcc.dg/vect/tree-vect.h | 8 ++++++++ gcc/testsuite/gcc.target/powerpc/pr87466.c | 6 ++++++ 28 files changed, 181 insertions(+), 1 deletion(-) diff --git a/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-1.c b/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-1.c index 0655c73a1f8b8..4664d7258c06b 100644 --- a/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-1.c +++ b/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-1.c @@ -1,3 +1,9 @@ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #ifndef SIGNAL_SUPPRESS #include <signal.h> #endif diff --git a/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-2.c b/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-2.c index 0f4c6f145f1a2..60ca7461cd993 100644 --- a/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-2.c +++ b/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-2.c @@ -1,3 +1,10 @@ + +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #ifndef SIGNAL_SUPPRESS #include <signal.h> #endif diff --git a/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-3.c b/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-3.c index 710b85ccb2a95..62de1f1fbf2a3 100644 --- a/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-3.c +++ b/gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-3.c @@ -1,3 +1,10 @@ + +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #ifndef SIGNAL_SUPPRESS #include <signal.h> #endif diff --git a/gcc/testsuite/gcc.c-torture/execute/pr56982.c b/gcc/testsuite/gcc.c-torture/execute/pr56982.c index 0fa9c8ab4ba82..b5f54d6c192ef 100644 --- a/gcc/testsuite/gcc.c-torture/execute/pr56982.c +++ b/gcc/testsuite/gcc.c-torture/execute/pr56982.c @@ -1,4 +1,11 @@ /* { dg-require-effective-target indirect_jumps } */ + +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> extern void abort (void); diff --git a/gcc/testsuite/gcc.dg/c99-stdint-1.c b/gcc/testsuite/gcc.dg/c99-stdint-1.c index f5c2cda77c9c0..cef8309d8033c 100644 --- a/gcc/testsuite/gcc.dg/c99-stdint-1.c +++ b/gcc/testsuite/gcc.dg/c99-stdint-1.c @@ -12,6 +12,12 @@ /* { dg-require-effective-target ptr32plus } */ /* { dg-additional-options "-DSIGNAL_SUPPRESS" { target { ! signal } } } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <limits.h> #include <stdint.h> /* This and the later SIG_ATOMIC_* tests should be appropriately diff --git a/gcc/testsuite/gcc.dg/c99-stdint-2.c b/gcc/testsuite/gcc.dg/c99-stdint-2.c index 08d9f6023d9f9..8ffb7261a58ff 100644 --- a/gcc/testsuite/gcc.dg/c99-stdint-2.c +++ b/gcc/testsuite/gcc.dg/c99-stdint-2.c @@ -7,4 +7,11 @@ /* The test is that there are no diagnostics, so just include the hosted version. */ + +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include "c99-stdint-1.c" diff --git a/gcc/testsuite/gcc.dg/c99-stdint-5.c b/gcc/testsuite/gcc.dg/c99-stdint-5.c index 60513233a43fc..5899436709c6f 100644 --- a/gcc/testsuite/gcc.dg/c99-stdint-5.c +++ b/gcc/testsuite/gcc.dg/c99-stdint-5.c @@ -5,6 +5,12 @@ /* { dg-options "-std=iso9899:1999 -pedantic-errors" } */ /* { dg-additional-options "-DSIGNAL_SUPPRESS" { target { ! signal } } } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <stdint.h> #ifndef SIGNAL_SUPPRESS #include <signal.h> diff --git a/gcc/testsuite/gcc.dg/declspec-18.c b/gcc/testsuite/gcc.dg/declspec-18.c index 2885692e1f38f..76b0bbeb28ed9 100644 --- a/gcc/testsuite/gcc.dg/declspec-18.c +++ b/gcc/testsuite/gcc.dg/declspec-18.c @@ -1,6 +1,12 @@ /* { dg-do compile } */ /* { dg-options "-std=gnu89" } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + static t1 *a; /* { dg-error "unknown type name 't1'" } */ int z; /* { dg-message "previous declaration of 'z'" } */ diff --git a/gcc/testsuite/gcc.dg/pr57287-2.c b/gcc/testsuite/gcc.dg/pr57287-2.c index b41ae64f93325..7a2439a5f7308 100644 --- a/gcc/testsuite/gcc.dg/pr57287-2.c +++ b/gcc/testsuite/gcc.dg/pr57287-2.c @@ -2,6 +2,12 @@ /* { dg-options "-O2 -Wall" } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> struct node diff --git a/gcc/testsuite/gcc.dg/pr57287.c b/gcc/testsuite/gcc.dg/pr57287.c index 47ed5b7988605..bcd567a1a43b3 100644 --- a/gcc/testsuite/gcc.dg/pr57287.c +++ b/gcc/testsuite/gcc.dg/pr57287.c @@ -2,6 +2,12 @@ /* { dg-options "-O2 -Wall" } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> jmp_buf buf; diff --git a/gcc/testsuite/gcc.dg/pr59920-1.c b/gcc/testsuite/gcc.dg/pr59920-1.c index a2f0727670020..20f3d05654ae9 100644 --- a/gcc/testsuite/gcc.dg/pr59920-1.c +++ b/gcc/testsuite/gcc.dg/pr59920-1.c @@ -3,6 +3,12 @@ /* { dg-options "-O0" } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> int bar (void); diff --git a/gcc/testsuite/gcc.dg/pr63748.c b/gcc/testsuite/gcc.dg/pr63748.c index cc353a7e5c34f..7595806024509 100644 --- a/gcc/testsuite/gcc.dg/pr63748.c +++ b/gcc/testsuite/gcc.dg/pr63748.c @@ -2,6 +2,12 @@ /* { dg-options "-O2 -Wall" } */ /* { dg-require-effective-target nonlocal_goto } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> jmp_buf *alloc_jmp_buf (); diff --git a/gcc/testsuite/gcc.dg/pr78582.c b/gcc/testsuite/gcc.dg/pr78582.c index 6d125cf8bab1c..c2718a94b8204 100644 --- a/gcc/testsuite/gcc.dg/pr78582.c +++ b/gcc/testsuite/gcc.dg/pr78582.c @@ -3,6 +3,12 @@ /* { dg-do compile } */ /* { dg-require-effective-target nonlocal_goto } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> void reader_loop () {} diff --git a/gcc/testsuite/gcc.dg/setjmp-1.c b/gcc/testsuite/gcc.dg/setjmp-1.c index 600fb7f1ca1be..6744f2fc21f7c 100644 --- a/gcc/testsuite/gcc.dg/setjmp-1.c +++ b/gcc/testsuite/gcc.dg/setjmp-1.c @@ -5,6 +5,12 @@ /* { dg-options "-O -Wclobbered -Wextra -Wall" } */ /* { dg-skip-if "" { ! nonlocal_goto } } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> extern void set_float_handler (jmp_buf *); diff --git a/gcc/testsuite/gcc.dg/setjmp-3.c b/gcc/testsuite/gcc.dg/setjmp-3.c index 7522242081189..4a72bf5c93f1a 100644 --- a/gcc/testsuite/gcc.dg/setjmp-3.c +++ b/gcc/testsuite/gcc.dg/setjmp-3.c @@ -2,6 +2,12 @@ /* { dg-options "-O" } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> extern void abort (void); diff --git a/gcc/testsuite/gcc.dg/setjmp-4.c b/gcc/testsuite/gcc.dg/setjmp-4.c index 20765f631d17a..a7b7045a9c80e 100644 --- a/gcc/testsuite/gcc.dg/setjmp-4.c +++ b/gcc/testsuite/gcc.dg/setjmp-4.c @@ -2,6 +2,12 @@ /* { dg-options "-O" } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> extern void abort (void); diff --git a/gcc/testsuite/gcc.dg/setjmp-5.c b/gcc/testsuite/gcc.dg/setjmp-5.c index 584762915deea..9ac9f8d3dcd95 100644 --- a/gcc/testsuite/gcc.dg/setjmp-5.c +++ b/gcc/testsuite/gcc.dg/setjmp-5.c @@ -2,6 +2,12 @@ /* { dg-options "-O2 -Wall" } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> void bar (int); diff --git a/gcc/testsuite/gcc.dg/setjmp-6.c b/gcc/testsuite/gcc.dg/setjmp-6.c index d821d230ce0af..2e7926d1d9603 100644 --- a/gcc/testsuite/gcc.dg/setjmp-6.c +++ b/gcc/testsuite/gcc.dg/setjmp-6.c @@ -3,6 +3,12 @@ /* { dg-options "-O3" } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> jmp_buf buf; diff --git a/gcc/testsuite/gcc.dg/stdint-width-1.c b/gcc/testsuite/gcc.dg/stdint-width-1.c index 3eba9f6cb15b8..e2efdd5276228 100644 --- a/gcc/testsuite/gcc.dg/stdint-width-1.c +++ b/gcc/testsuite/gcc.dg/stdint-width-1.c @@ -3,8 +3,20 @@ /* { dg-options "-std=c11 -ffreestanding" } */ /* { dg-additional-options "-DSIGNAL_SUPPRESS" { target { ! signal } } } */ -#include <stddef.h> +/* Define __STDC_WANT_IEC_60559_BFP_EXT__ before we (potentially) + include <vxWorks.h>, because <vxWorks.h> can cause <stdint.h> + to be indirectly included. Without __STDC_WANT_IEC_60559_BFP_EXT__ + being defined ahead, stdint.h would not define the macros we are + trying to verify, thus causing this test to fail. */ #define __STDC_WANT_IEC_60559_BFP_EXT__ + +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + +#include <stddef.h> #include <stdint.h> #ifndef SIGNAL_SUPPRESS #include <signal.h> diff --git a/gcc/testsuite/gcc.dg/torture/pr48542.c b/gcc/testsuite/gcc.dg/torture/pr48542.c index 98cff00071d6b..8272c0d429090 100644 --- a/gcc/testsuite/gcc.dg/torture/pr48542.c +++ b/gcc/testsuite/gcc.dg/torture/pr48542.c @@ -1,6 +1,12 @@ /* { dg-do run } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + /* The return-address was clobbered. */ #include <stdlib.h> #include <setjmp.h> diff --git a/gcc/testsuite/gcc.dg/torture/pr59993.c b/gcc/testsuite/gcc.dg/torture/pr59993.c index 57ecdde6938c2..30390c46d1c26 100644 --- a/gcc/testsuite/gcc.dg/torture/pr59993.c +++ b/gcc/testsuite/gcc.dg/torture/pr59993.c @@ -1,6 +1,12 @@ /* { dg-do compile } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> extern int optind; diff --git a/gcc/testsuite/gcc.dg/torture/pr63738.c b/gcc/testsuite/gcc.dg/torture/pr63738.c index 82ac4ff2a638b..7064a980e29f7 100644 --- a/gcc/testsuite/gcc.dg/torture/pr63738.c +++ b/gcc/testsuite/gcc.dg/torture/pr63738.c @@ -1,6 +1,12 @@ /* { dg-do compile } */ /* { dg-require-effective-target nonlocal_goto } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> struct longjmp_buffer { diff --git a/gcc/testsuite/gcc.dg/torture/pr64728.c b/gcc/testsuite/gcc.dg/torture/pr64728.c index 7384d85a9289d..1dc32e0165f9b 100644 --- a/gcc/testsuite/gcc.dg/torture/pr64728.c +++ b/gcc/testsuite/gcc.dg/torture/pr64728.c @@ -1,6 +1,12 @@ /* { dg-do compile } */ /* { dg-require-effective-target nonlocal_goto } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> jmp_buf a; diff --git a/gcc/testsuite/gcc.dg/torture/pr66101.c b/gcc/testsuite/gcc.dg/torture/pr66101.c index 39d380722b463..e636703d30e4d 100644 --- a/gcc/testsuite/gcc.dg/torture/pr66101.c +++ b/gcc/testsuite/gcc.dg/torture/pr66101.c @@ -1,6 +1,12 @@ /* { dg-do compile } */ /* { dg-require-effective-target nonlocal_goto } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> jmp_buf env; diff --git a/gcc/testsuite/gcc.dg/torture/stackalign/setjmp-3.c b/gcc/testsuite/gcc.dg/torture/stackalign/setjmp-3.c index 2f9840c14a7e8..d4180f7f8bfa0 100644 --- a/gcc/testsuite/gcc.dg/torture/stackalign/setjmp-3.c +++ b/gcc/testsuite/gcc.dg/torture/stackalign/setjmp-3.c @@ -1,6 +1,12 @@ /* { dg-do run } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> extern void abort (void); diff --git a/gcc/testsuite/gcc.dg/torture/stackalign/setjmp-4.c b/gcc/testsuite/gcc.dg/torture/stackalign/setjmp-4.c index b180130c40659..2d2af5ad14806 100644 --- a/gcc/testsuite/gcc.dg/torture/stackalign/setjmp-4.c +++ b/gcc/testsuite/gcc.dg/torture/stackalign/setjmp-4.c @@ -1,6 +1,12 @@ /* { dg-do run } */ /* { dg-require-effective-target indirect_jumps } */ +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <setjmp.h> extern void abort (void); diff --git a/gcc/testsuite/gcc.dg/vect/tree-vect.h b/gcc/testsuite/gcc.dg/vect/tree-vect.h index c4b8144121666..ec145a0890b22 100644 --- a/gcc/testsuite/gcc.dg/vect/tree-vect.h +++ b/gcc/testsuite/gcc.dg/vect/tree-vect.h @@ -1,4 +1,12 @@ + /* Check if system supports SIMD */ + +#if defined(__vxworks) && !defined(__RTP__) + /* A kernel module requires the inclusion of <vxWorks.h> + before any other system header. */ + #include <vxWorks.h> +#endif + #include <signal.h> #if defined(__i386__) || defined(__x86_64__) diff --git a/gcc/testsuite/gcc.target/powerpc/pr87466.c b/gcc/testsuite/gcc.target/powerpc/pr87466.c index 2bb292cfed1f8..047bae25821d8 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr87466.c +++ b/gcc/testsuite/gcc.target/powerpc/pr87466.c @@ -1,6 +1,12 @@ /* { dg-do compile { target powerpc*-*-* } } */ /* { dg-options "-O2" } */ +/* VxWorks kernel modules require the inclusion of <vxWorks.h> + before any other system header. */ +#if defined(__vxworks) && !defined(__RTP__) +#include <vxWorks.h> +#endif + #include <stdlib.h> #include <setjmp.h> -- Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/ Free Software Activist GNU Toolchain Engineer Vim, Vi, Voltei pro Emacs -- GNUlius Caesar