This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [v3] libstdc++/57920
- From: Chung-Ju Wu <jasonwucj at gmail dot com>
- To: Paolo Carlini <paolo dot carlini at oracle dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "libstdc++" <libstdc++ at gcc dot gnu dot org>
- Date: Tue, 23 Jul 2013 17:17:54 +0800
- Subject: Re: [v3] libstdc++/57920
- References: <51ED2095 dot 9000403 at oracle dot com>
2013/7/22 Paolo Carlini <paolo.carlini@oracle.com>:
> Hi,
>
> see audit trail for details. I tested on x86_64-linux (with/without
> _GLIBCXX_X86_RDRAND artificially undefined) the below straightforward patch
> and checked by hand the strace. I'm going to apply it soon.
>
> Thanks,
> Paolo.
>
> ///////////////////
Hi, Paolo,
In this patch I can see that you thought cstdio is unnecessary:
Index: include/std/random
================================================
--- include/std/random (revision 201122)
+++ include/std/random (working copy)
@@ -36,7 +36,6 @@
#else
#include <cmath>
-#include <cstdio>
#include <cstdlib>
#include <string>
#include <iosfwd>
However, for some cases the file libstdc++-v3/include/std/random
may include libstdc++-v3/include/bits/random.h, in which there is
a declaration using FILE type:
[libstdc++-v3/include/std/random]
46 #ifdef _GLIBCXX_USE_C99_STDINT_TR1
47
48 #include <cstdint> // For uint_fast32_t, uint_fast64_t, uint_least32_t
49 #include <bits/random.h>
50 #include <bits/opt_random.h>
51 #include <bits/random.tcc>
52
53 #endif // _GLIBCXX_USE_C99_STDINT_TR1
[libstdc++-v3/include/bits/random.h]
1639 union
1640 {
1641 FILE* _M_file;
1642 mt19937 _M_mt;
1643 };
causing the following error:
libstdc++-v3/include/bits/random.h:1641:5: error: 'FILE' does not name a type
FILE* _M_file;
Perhaps cstdio is necessary in this case. What do you think? :-)
Best regards,
jasonwucj