On May 1, 2014, at 11:17 PM, Joel Sherrill <joel.sherr...@oarcorp.com> wrote:

> 
> On 5/1/2014 3:29 PM, Oleg Endo wrote:
>> On 01 May 2014, at 22:08, Joel Sherrill <joel.sherr...@oarcorp.com> wrote:
>> 
>>> Hi
>>> 
>>> gcc-4.8.2 targeting sh-*-* fails to compile on
>>> FreeBSD 10 which is using clang. I am hoping someone
>>> has some ideas about these.
>> Yes, I've noticed and mentioned this already a while ago:
>> http://gcc.gnu.org/ml/gcc/2013-12/msg00036.html
>> 
>> 
>>> In file included from ../../gcc-4.8.2/gcc/config/sh/sh.c:63:
>>> In file included from /usr/include/c++/v1/sstream:174:
>>> In file included from /usr/include/c++/v1/ostream:131:
>>> In file included from /usr/include/c++/v1/ios:216:
>>> In file included from /usr/include/c++/v1/__locale:15:
>>> In file included from /usr/include/c++/v1/string:438:
>>> In file included from /usr/include/c++/v1/cwchar:107:
>>> In file included from /usr/include/c++/v1/cwctype:54:
>>> /usr/include/c++/v1/cctype:51:72: error: use of undeclared identifier
>>> 'do_not_use_isalnum_with_safe_ctype'
>>> inline _LIBCPP_INLINE_VISIBILITY int __libcpp_isalnum(int __c) {return
>>> isalnum(__c);}
>>> 
>>> sh.c line 63 is this:
>>> 
>>> #include <sstream>
>>> #include <vector>
>>> #include <algorithm>
>>> 
>>> It is the only file in gcc/config/* to include sstream.  Has some
>>> update sweep for C++ transition missed this file?
>> Could you please try moving the std includes above any other (gcc) includes 
>> and see if it fixes the issue?  AFAIR it did it for me.
> This seems to fix it. I am not sure why sh.c is the only file in
> gcc/config which includes sstream though.

Because I added code to sh.c that uses stuff from sstream after the switch to 
C++.

> Is this a violation
> of some new rule?

Not that I'm aware of.

> Is there a PR for this?
> 
> If not, I probably should file one and get the patch pushed
> into 4.8 as well as 4.9 and the head if they need it.
> 

If you insist on having a PR for it, please feel free.  In any case, I'll 
commit the 'fix' to trunk and the branches by tomorrow.

Cheers,
Oleg

Reply via email to