[v3] libstdc++/57920

Paolo Carlini paolo.carlini@oracle.com
Tue Jul 23 09:33:00 GMT 2013


Hi,

On 07/23/2013 11:17 AM, Chung-Ju Wu wrote:
> 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.
>>
>> ///////////////////
> [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? :-)
The issue is theoretical at the moment because <string> ends up 
including <cstdio> anyway, thus the above can't really happen. It's true 
that the above union - which by way I didn't invent - it's rather 
annoying if we manage to *really* avoid including <cstdio>, which is 
very big.

Currently you can't really get the error above.

Paolo.



More information about the Gcc-patches mailing list