* [Bug c/108224] [PATCH] add srandom random initstate setstate
@ 2022-12-26 8:55 Jonny Grant
2022-12-26 9:19 ` Prathamesh Kulkarni
0 siblings, 1 reply; 4+ messages in thread
From: Jonny Grant @ 2022-12-26 8:55 UTC (permalink / raw)
To: gcc-patches
From 6ff344979af46dbcd739dd9068d6d595547e4c27 Mon Sep 17 00:00:00 2001
From: Jonathan Grant <jg@jguk.org>
Date: Sun, 25 Dec 2022 22:38:44 +0000
Subject: [PATCH] add srandom random initstate setstate
---
| 4 ++++
1 file changed, 4 insertions(+)
--git a/gcc/c-family/known-headers.cc b/gcc/c-family/known-headers.cc
index 9c256173b82..ade9fa2dcc0 100644
--- a/gcc/c-family/known-headers.cc
+++ b/gcc/c-family/known-headers.cc
@@ -171,6 +171,10 @@ get_stdlib_header_for_name (const char *name, enum stdlib lib)
{"getenv", {"<stdlib.h>", "<cstdlib>"} },
{"malloc", {"<stdlib.h>", "<cstdlib>"} },
{"realloc", {"<stdlib.h>", "<cstdlib>"} },
+ {"random", {"<stdlib.h>", "<cstdlib>"} },
+ {"srandom", {"<stdlib.h>", "<cstdlib>"} },
+ {"initstate", {"<stdlib.h>", "<cstdlib>"} },
+ {"setstate", {"<stdlib.h>", "<cstdlib>"} },
/* <string.h> and <cstring>. */
{"memchr", {"<string.h>", "<cstring>"} },
--
2.37.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Bug c/108224] [PATCH] add srandom random initstate setstate
2022-12-26 8:55 [Bug c/108224] [PATCH] add srandom random initstate setstate Jonny Grant
@ 2022-12-26 9:19 ` Prathamesh Kulkarni
2022-12-27 22:31 ` Jonny Grant
0 siblings, 1 reply; 4+ messages in thread
From: Prathamesh Kulkarni @ 2022-12-26 9:19 UTC (permalink / raw)
To: Jonny Grant; +Cc: gcc-patches
On Mon, 26 Dec 2022 at 14:25, Jonny Grant <jg@jguk.org> wrote:
>
>
>
> From 6ff344979af46dbcd739dd9068d6d595547e4c27 Mon Sep 17 00:00:00 2001
> From: Jonathan Grant <jg@jguk.org>
> Date: Sun, 25 Dec 2022 22:38:44 +0000
> Subject: [PATCH] add srandom random initstate setstate
>
> ---
> gcc/c-family/known-headers.cc | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/gcc/c-family/known-headers.cc b/gcc/c-family/known-headers.cc
> index 9c256173b82..ade9fa2dcc0 100644
> --- a/gcc/c-family/known-headers.cc
> +++ b/gcc/c-family/known-headers.cc
> @@ -171,6 +171,10 @@ get_stdlib_header_for_name (const char *name, enum stdlib lib)
> {"getenv", {"<stdlib.h>", "<cstdlib>"} },
> {"malloc", {"<stdlib.h>", "<cstdlib>"} },
> {"realloc", {"<stdlib.h>", "<cstdlib>"} },
> + {"random", {"<stdlib.h>", "<cstdlib>"} },
> + {"srandom", {"<stdlib.h>", "<cstdlib>"} },
> + {"initstate", {"<stdlib.h>", "<cstdlib>"} },
> + {"setstate", {"<stdlib.h>", "<cstdlib>"} },
>
> /* <string.h> and <cstring>. */
> {"memchr", {"<string.h>", "<cstring>"} },
Hi Jonny,
Thanks for the patch. A couple of things:
(a) Could you please add a test-case for the above symbols ? See
testsuite/gcc.dg/missing-header-fixit-4.c
for a similar example for printf.
(b) The patch is missing changelog.
I assume you've tested the patch with bootstrap+regtest ?
Thanks,
Prathamesh
> --
> 2.37.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Bug c/108224] [PATCH] add srandom random initstate setstate
2022-12-26 9:19 ` Prathamesh Kulkarni
@ 2022-12-27 22:31 ` Jonny Grant
2023-01-01 7:42 ` Prathamesh Kulkarni
0 siblings, 1 reply; 4+ messages in thread
From: Jonny Grant @ 2022-12-27 22:31 UTC (permalink / raw)
To: Prathamesh Kulkarni; +Cc: gcc-patches
On 26/12/2022 09:19, Prathamesh Kulkarni wrote:
> On Mon, 26 Dec 2022 at 14:25, Jonny Grant <jg@jguk.org> wrote:
>>
>>
>>
>> From 6ff344979af46dbcd739dd9068d6d595547e4c27 Mon Sep 17 00:00:00 2001
>> From: Jonathan Grant <jg@jguk.org>
>> Date: Sun, 25 Dec 2022 22:38:44 +0000
>> Subject: [PATCH] add srandom random initstate setstate
>>
>> ---
>> gcc/c-family/known-headers.cc | 4 ++++
>> 1 file changed, 4 insertions(+)
>>
>> diff --git a/gcc/c-family/known-headers.cc b/gcc/c-family/known-headers.cc
>> index 9c256173b82..ade9fa2dcc0 100644
>> --- a/gcc/c-family/known-headers.cc
>> +++ b/gcc/c-family/known-headers.cc
>> @@ -171,6 +171,10 @@ get_stdlib_header_for_name (const char *name, enum stdlib lib)
>> {"getenv", {"<stdlib.h>", "<cstdlib>"} },
>> {"malloc", {"<stdlib.h>", "<cstdlib>"} },
>> {"realloc", {"<stdlib.h>", "<cstdlib>"} },
>> + {"random", {"<stdlib.h>", "<cstdlib>"} },
>> + {"srandom", {"<stdlib.h>", "<cstdlib>"} },
>> + {"initstate", {"<stdlib.h>", "<cstdlib>"} },
>> + {"setstate", {"<stdlib.h>", "<cstdlib>"} },
>>
>> /* <string.h> and <cstring>. */
>> {"memchr", {"<string.h>", "<cstring>"} },
> Hi Jonny,
> Thanks for the patch. A couple of things:
> (a) Could you please add a test-case for the above symbols ? See
> testsuite/gcc.dg/missing-header-fixit-4.c
> for a similar example for printf.
> (b) The patch is missing changelog.
> I assume you've tested the patch with bootstrap+regtest ?
Hi Prathmesh
Many thanks for your reply.
I built gcc by typing "make", I understand that is the bootstrap. I don't know about regtest, could you direct me to a guide please.
I didn't add a test; I can do that now. Is there an FAQ you can direct me to to run those tests please.
Running ‘make check-c’ now, its taking along time on gcc.c-torture.
Is there a way I can quickly run only the gcc.dg missing header tests?
BTW, do you know if a change could be made to detect dejagnu being installed?
Would be good if "make check" quickly failed if the "runtest" command from dejagnu was not found.
I needed to install these two packages. Would be good to get a hint when running ‘make check-c’
autogen dejagnu
For the files like missing-header-fixit-4.c is it sufficient to just add a file to that folder?
Cheers
Jonny
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Bug c/108224] [PATCH] add srandom random initstate setstate
2022-12-27 22:31 ` Jonny Grant
@ 2023-01-01 7:42 ` Prathamesh Kulkarni
0 siblings, 0 replies; 4+ messages in thread
From: Prathamesh Kulkarni @ 2023-01-01 7:42 UTC (permalink / raw)
To: Jonny Grant; +Cc: gcc-patches
On Wed, 28 Dec 2022 at 04:01, Jonny Grant <jg@jguk.org> wrote:
>
>
>
> On 26/12/2022 09:19, Prathamesh Kulkarni wrote:
> > On Mon, 26 Dec 2022 at 14:25, Jonny Grant <jg@jguk.org> wrote:
> >>
> >>
> >>
> >> From 6ff344979af46dbcd739dd9068d6d595547e4c27 Mon Sep 17 00:00:00 2001
> >> From: Jonathan Grant <jg@jguk.org>
> >> Date: Sun, 25 Dec 2022 22:38:44 +0000
> >> Subject: [PATCH] add srandom random initstate setstate
> >>
> >> ---
> >> gcc/c-family/known-headers.cc | 4 ++++
> >> 1 file changed, 4 insertions(+)
> >>
> >> diff --git a/gcc/c-family/known-headers.cc b/gcc/c-family/known-headers.cc
> >> index 9c256173b82..ade9fa2dcc0 100644
> >> --- a/gcc/c-family/known-headers.cc
> >> +++ b/gcc/c-family/known-headers.cc
> >> @@ -171,6 +171,10 @@ get_stdlib_header_for_name (const char *name, enum stdlib lib)
> >> {"getenv", {"<stdlib.h>", "<cstdlib>"} },
> >> {"malloc", {"<stdlib.h>", "<cstdlib>"} },
> >> {"realloc", {"<stdlib.h>", "<cstdlib>"} },
> >> + {"random", {"<stdlib.h>", "<cstdlib>"} },
> >> + {"srandom", {"<stdlib.h>", "<cstdlib>"} },
> >> + {"initstate", {"<stdlib.h>", "<cstdlib>"} },
> >> + {"setstate", {"<stdlib.h>", "<cstdlib>"} },
> >>
> >> /* <string.h> and <cstring>. */
> >> {"memchr", {"<string.h>", "<cstring>"} },
> > Hi Jonny,
> > Thanks for the patch. A couple of things:
> > (a) Could you please add a test-case for the above symbols ? See
> > testsuite/gcc.dg/missing-header-fixit-4.c
> > for a similar example for printf.
> > (b) The patch is missing changelog.
> > I assume you've tested the patch with bootstrap+regtest ?
>
> Hi Prathmesh
> Many thanks for your reply.
>
> I built gcc by typing "make", I understand that is the bootstrap. I don't know about regtest, could you direct me to a guide please.
Hi,
Sorry for slow response. It depends on how you configured gcc. If
bootstrap is enabled (which is by default), then make would bootstrap
gcc.
Typically for development, we disable bootstrap by passing
--disable-bootstrap to configure for faster builds,
and then validate the patch with final bootstrap+test.
For regression testing, you'd have to
(1) Bootstrap the trunk without the patch,
(2) Bootstrap the trunk with patch,
(3) Compare the two build dirs with $gcc-src/contrib/compare_tests.
and address issues for the FAIL'd tests.
>
> I didn't add a test; I can do that now. Is there an FAQ you can direct me to to run those tests please.
>
> Running ‘make check-c’ now, its taking along time on gcc.c-torture.
> Is there a way I can quickly run only the gcc.dg missing header tests?
>
> BTW, do you know if a change could be made to detect dejagnu being installed?
>
> Would be good if "make check" quickly failed if the "runtest" command from dejagnu was not found.
>
> I needed to install these two packages. Would be good to get a hint when running ‘make check-c’
> autogen dejagnu
>
>
> For the files like missing-header-fixit-4.c is it sufficient to just add a file to that folder?
Yes, adding the file in $gcc-src/gcc/testsuite/gcc.dg/ should be sufficient.
For eg, to only run missing-header-fixit-4.c this should work:
make check-gcc RUNTESTFLAGS="dg.exp=missing-header-fixit-4.c"
Thanks,
Prathamesh
> Cheers
> Jonny
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-01-01 7:43 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-26 8:55 [Bug c/108224] [PATCH] add srandom random initstate setstate Jonny Grant
2022-12-26 9:19 ` Prathamesh Kulkarni
2022-12-27 22:31 ` Jonny Grant
2023-01-01 7:42 ` Prathamesh Kulkarni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).