[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: make coverage
From: |
Bruno Haible |
Subject: |
Re: make coverage |
Date: |
Fri, 19 May 2017 19:29:55 +0200 |
User-agent: |
KMail/5.1.3 (Linux/4.4.0-75-generic; KDE/5.18.0; x86_64; ; ) |
Tim Rühsen wrote:
> 10000000 works here.
Thanks for the testing. I'm applying this workaround:
2017-05-19 Bruno Haible <address@hidden>
printf-posix tests: Avoid test failure with "gcc --coverage".
Reported by Tim Rühsen <address@hidden>.
* tests/test-printf-posix2.c (main): Test a width of 10000000 rather
than 5000000.
* tests/test-fprintf-posix2.c (main): Likewise.
diff --git a/tests/test-fprintf-posix2.c b/tests/test-fprintf-posix2.c
index 4687b93..c6850a2 100644
--- a/tests/test-fprintf-posix2.c
+++ b/tests/test-fprintf-posix2.c
@@ -41,8 +41,8 @@ main (int argc, char *argv[])
#ifdef RLIMIT_DATA
if (getrlimit (RLIMIT_DATA, &limit) < 0)
return 77;
- if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 5000000)
- limit.rlim_max = 5000000;
+ if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 10000000)
+ limit.rlim_max = 10000000;
limit.rlim_cur = limit.rlim_max;
if (setrlimit (RLIMIT_DATA, &limit) < 0)
return 77;
@@ -51,8 +51,8 @@ main (int argc, char *argv[])
#ifdef RLIMIT_AS
if (getrlimit (RLIMIT_AS, &limit) < 0)
return 77;
- if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 5000000)
- limit.rlim_max = 5000000;
+ if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 10000000)
+ limit.rlim_max = 10000000;
limit.rlim_cur = limit.rlim_max;
if (setrlimit (RLIMIT_AS, &limit) < 0)
return 77;
@@ -61,8 +61,8 @@ main (int argc, char *argv[])
#ifdef RLIMIT_STACK
if (getrlimit (RLIMIT_STACK, &limit) < 0)
return 77;
- if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 5000000)
- limit.rlim_max = 5000000;
+ if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 10000000)
+ limit.rlim_max = 10000000;
limit.rlim_cur = limit.rlim_max;
if (setrlimit (RLIMIT_STACK, &limit) < 0)
return 77;
@@ -73,30 +73,30 @@ main (int argc, char *argv[])
{
case 0:
{
- void *memory = malloc (5000000);
+ void *memory = malloc (10000000);
if (memory == NULL)
return 1;
- memset (memory, 17, 5000000);
+ memset (memory, 17, 10000000);
return 78;
}
case 1:
- ret = fprintf (stdout, "%.5000000f", 1.0);
- return !(ret == 5000002 || (ret < 0 && errno == ENOMEM));
+ ret = fprintf (stdout, "%.10000000f", 1.0);
+ return !(ret == 10000002 || (ret < 0 && errno == ENOMEM));
case 2:
- ret = fprintf (stdout, "%.5000000f", -1.0);
- return !(ret == 5000003 || (ret < 0 && errno == ENOMEM));
+ ret = fprintf (stdout, "%.10000000f", -1.0);
+ return !(ret == 10000003 || (ret < 0 && errno == ENOMEM));
case 3:
- ret = fprintf (stdout, "%.5000000e", 1.0);
- return !(ret >= 5000006 || (ret < 0 && errno == ENOMEM));
+ ret = fprintf (stdout, "%.10000000e", 1.0);
+ return !(ret >= 10000006 || (ret < 0 && errno == ENOMEM));
case 4:
- ret = fprintf (stdout, "%.5000000d", 1);
- return !(ret == 5000000 || (ret < 0 && errno == ENOMEM));
+ ret = fprintf (stdout, "%.10000000d", 1);
+ return !(ret == 10000000 || (ret < 0 && errno == ENOMEM));
case 5:
- ret = fprintf (stdout, "%.5000000d", -1);
- return !(ret == 5000001 || (ret < 0 && errno == ENOMEM));
+ ret = fprintf (stdout, "%.10000000d", -1);
+ return !(ret == 10000001 || (ret < 0 && errno == ENOMEM));
case 6:
- ret = fprintf (stdout, "%.5000000u", 1);
- return !(ret == 5000000 || (ret < 0 && errno == ENOMEM));
+ ret = fprintf (stdout, "%.10000000u", 1);
+ return !(ret == 10000000 || (ret < 0 && errno == ENOMEM));
}
return 0;
}
diff --git a/tests/test-printf-posix2.c b/tests/test-printf-posix2.c
index b6ad209..531420c 100644
--- a/tests/test-printf-posix2.c
+++ b/tests/test-printf-posix2.c
@@ -41,8 +41,8 @@ main (int argc, char *argv[])
#ifdef RLIMIT_DATA
if (getrlimit (RLIMIT_DATA, &limit) < 0)
return 77;
- if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 5000000)
- limit.rlim_max = 5000000;
+ if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 10000000)
+ limit.rlim_max = 10000000;
limit.rlim_cur = limit.rlim_max;
if (setrlimit (RLIMIT_DATA, &limit) < 0)
return 77;
@@ -51,8 +51,8 @@ main (int argc, char *argv[])
#ifdef RLIMIT_AS
if (getrlimit (RLIMIT_AS, &limit) < 0)
return 77;
- if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 5000000)
- limit.rlim_max = 5000000;
+ if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 10000000)
+ limit.rlim_max = 10000000;
limit.rlim_cur = limit.rlim_max;
if (setrlimit (RLIMIT_AS, &limit) < 0)
return 77;
@@ -61,8 +61,8 @@ main (int argc, char *argv[])
#ifdef RLIMIT_STACK
if (getrlimit (RLIMIT_STACK, &limit) < 0)
return 77;
- if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 5000000)
- limit.rlim_max = 5000000;
+ if (limit.rlim_max == RLIM_INFINITY || limit.rlim_max > 10000000)
+ limit.rlim_max = 10000000;
limit.rlim_cur = limit.rlim_max;
if (setrlimit (RLIMIT_STACK, &limit) < 0)
return 77;
@@ -73,30 +73,30 @@ main (int argc, char *argv[])
{
case 0:
{
- void *memory = malloc (5000000);
+ void *memory = malloc (10000000);
if (memory == NULL)
return 1;
- memset (memory, 17, 5000000);
+ memset (memory, 17, 10000000);
return 78;
}
case 1:
- ret = printf ("%.5000000f", 1.0);
- return !(ret == 5000002 || (ret < 0 && errno == ENOMEM));
+ ret = printf ("%.10000000f", 1.0);
+ return !(ret == 10000002 || (ret < 0 && errno == ENOMEM));
case 2:
- ret = printf ("%.5000000f", -1.0);
- return !(ret == 5000003 || (ret < 0 && errno == ENOMEM));
+ ret = printf ("%.10000000f", -1.0);
+ return !(ret == 10000003 || (ret < 0 && errno == ENOMEM));
case 3:
- ret = printf ("%.5000000e", 1.0);
- return !(ret >= 5000006 || (ret < 0 && errno == ENOMEM));
+ ret = printf ("%.10000000e", 1.0);
+ return !(ret >= 10000006 || (ret < 0 && errno == ENOMEM));
case 4:
- ret = printf ("%.5000000d", 1);
- return !(ret == 5000000 || (ret < 0 && errno == ENOMEM));
+ ret = printf ("%.10000000d", 1);
+ return !(ret == 10000000 || (ret < 0 && errno == ENOMEM));
case 5:
- ret = printf ("%.5000000d", -1);
- return !(ret == 5000001 || (ret < 0 && errno == ENOMEM));
+ ret = printf ("%.10000000d", -1);
+ return !(ret == 10000001 || (ret < 0 && errno == ENOMEM));
case 6:
- ret = printf ("%.5000000u", 1);
- return !(ret == 5000000 || (ret < 0 && errno == ENOMEM));
+ ret = printf ("%.10000000u", 1);
+ return !(ret == 10000000 || (ret < 0 && errno == ENOMEM));
}
return 0;
}
Re: make coverage, Bruno Haible, 2017/05/18