When running the testsuite on boards that can't report an error status DejaGNU...
authorMatthew Malcomson <matthew.malcomson@arm.com>
Fri, 16 Nov 2018 16:26:44 +0000 (16:26 +0000)
committerMatthew Malcomson <matmal01@gcc.gnu.org>
Fri, 16 Nov 2018 16:26:44 +0000 (16:26 +0000)
When running the testsuite on boards that can't report an error status
DejaGNU uses a special wrapper to print the exit code on stdout and
parses stdout to find whether an execution failed or passed.

In testcases that use "freopen (..., ..., stdout)" this special line is
printed to the alternate location described in the freopen call and
DejaGNU can't find the error code.

This results in DejaGNU using a default return status of 2 and the test
failing.

This patch skips the two testcases that use freopen on stdout when
testing a board that requires this wrapper.

Testing done by running these two tests on arm-none-eabi cross build and
observing that they are unsupported.

gcc/testsuite/ChangeLog:

2018-11-16  Matthew Malcomson  <matthew.malcomson@arm.com>

* gcc.c-torture/execute/printf-2.c: Skip on wrapped boards.
* gcc.c-torture/execute/user-printf.c: Likewise.

From-SVN: r266214

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/printf-2.c
gcc/testsuite/gcc.c-torture/execute/user-printf.c

index b1b6ae4bc8706c261700989bd8946f094483fce9..a00506d533dd063a68e749f619248651a77c68c7 100644 (file)
@@ -1,3 +1,8 @@
+2018-11-16  Matthew Malcomson  <matthew.malcomson@arm.com>
+
+       * gcc.c-torture/execute/printf-2.c: Skip on wrapped boards.
+       * gcc.c-torture/execute/user-printf.c: Likewise.
+
 2018-11-16  Nathan Sidwell  <nathan@acm.org>
 
        PR c++/87269
index 50741101bbd64fb301e3069b01d423b4d007f575..2e9f2a2bb755221ec49baccccad0737e51f579bf 100644 (file)
@@ -1,6 +1,7 @@
 /* Verify that calls to printf don't get eliminated even if their
    result on success can be computed at compile time (they can fail).
    The calls can still be transformed into those of other functions.
+   { dg-require-effective-target unwrapped }
    { dg-skip-if "requires io" { freestanding } } */
 
 #include <stdio.h>
index e5784ed8e961e87c8f2d8ba85bbee6bb1b432155..11c61fa3949e962595ca7142bbcecb774fb8231f 100644 (file)
@@ -1,6 +1,7 @@
 /* Verify that calls to a function declared wiith attribute format (printf)
    don't get eliminated even if their result on success can be computed at
    compile time (they can fail).
+   { dg-require-effective-target unwrapped }
    { dg-skip-if "requires io" { freestanding } } */
 
 #include <stdarg.h>