The g++.dg/gcov/pr16855*.C tests FAIL on Solaris:
FAIL: g++.dg/gcov/pr16855.C -std=gnu++17 gcov: 1 failures in line counts, 0 in branch percentages, 0 in condition/decision, 0 in prime-paths, 0 in return percentages, 0 in intermediate format, 0 failed in filters
FAIL: g++.dg/gcov/pr16855.C -std=gnu++17 line 24: is #####:should be 1
FAIL: g++.dg/gcov/pr16855.C -std=gnu++26 gcov: 6 failures in line counts, 0 in branch percentages, 0 in condition/decision, 0 in prime-paths, 0 in return percentages, 0 in intermediate format, 0 failed in filters
FAIL: g++.dg/gcov/pr16855.C -std=gnu++26 line 15: is 3:should be 1
FAIL: g++.dg/gcov/pr16855.C -std=gnu++26 line 22: is 3:should be 1
FAIL: g++.dg/gcov/pr16855.C -std=gnu++26 line 24: is #####:should be 1
FAIL: g++.dg/gcov/pr16855.C -std=gnu++26 line 38: is 3:should be 1
FAIL: g++.dg/gcov/pr16855.C -std=gnu++26 line 44: is 3:should be 1
FAIL: g++.dg/gcov/pr16855.C -std=gnu++26 line 49: is 3:should be 1
Same for -std=gnu++98.
The issue has long been known and the failures generate an excessive
amount of noise. Since the PRs haven't seen any activity in years, this
patch xfail's them.
Tested on i386-pc-solaris2.11, sparc-sun-solaris2.11,
x86_64-pc-linux-gnu, and x86_64-apple-darwin25.1.0.
2025-11-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
gcc/testsuite:
PR c++/81337
PR c++/52477
* g++.dg/gcov/pr16855.C (Test::~Test): xfail on *-*-solaris2*
(dg-final): Likewise.
* g++.dg/gcov/pr16855-priority.C (Test::~Test): Likewise.
(dg-final): Likewise.
public:
Test (void) { fprintf (stderr, "In Test::Test\n"); /* count(1) */ }
~Test (void) {
- fprintf (stderr, "In Test::~Test\n"); /* count(1) { xfail *-*-dragonfly* } */
+ fprintf (stderr, "In Test::~Test\n"); /* count(1) { xfail *-*-dragonfly* *-*-solaris2* } */
}
} T1;
fprintf (stderr, "in destructor((65535))\n"); /* count(1) */
}
-/* { dg-final { run-gcov branches { -b pr16855-priority.C } { xfail *-*-dragonfly* } } } */
+/* { dg-final { run-gcov branches { -b pr16855-priority.C } { xfail *-*-dragonfly* *-*-solaris2* } } } */
/* { dg-options "-fprofile-arcs -ftest-coverage" } */
/* { dg-do run { target native } } */
-/* See PR91087 for information on Darwin xfails. */
+/* See PR91087 for information on Darwin xfails. Also PR81337 for Solaris
+ ones.*/
#include <stdlib.h>
#include <stdio.h>
public:
Test (void) { fprintf (stderr, "In Test::Test\n"); /* count(1) */ }
~Test (void) {
- fprintf (stderr, "In Test::~Test\n"); /* count(1) { xfail *-*-darwin* *-*-dragonfly* } */
+ fprintf (stderr, "In Test::~Test\n"); /* count(1) { xfail *-*-darwin* *-*-dragonfly* *-*-solaris2* } */
}
} T1;
fprintf (stderr, "in destructor(())\n"); /* count(1) { xfail *-*-darwin* } */
}
-/* { dg-final { run-gcov branches { -b pr16855.C } { xfail *-*-darwin* *-*-dragonfly* } } } */
+/* { dg-final { run-gcov branches { -b pr16855.C } { xfail *-*-darwin* *-*-dragonfly* *-*-solaris2* } } } */