Re: Are clang++ and libc++ compatible?

From: Eitan Adler <lists_at_eitanadler.com>
Date: Tue, 12 Nov 2013 16:35:16 -0500
On Tue, Nov 12, 2013 at 3:19 PM, Steve Kargl
<sgk_at_troutmask.apl.washington.edu> wrote:
> On Tue, Nov 12, 2013 at 09:55:56AM -0800, Steve Kargl wrote:
>> On Tue, Nov 12, 2013 at 06:37:39PM +0100, Dimitry Andric wrote:
>> > On 12 Nov 2013, at 17:54, Steve Kargl <sgk_at_troutmask.apl.washington.edu> wrote:
>> > >
>> > >      struct Entry {
>> > >        time_t date;
>> > >        Severity severity;
>> > >        std::deque<Entry> messages;
>> > >        std::string message;
>> > >        bool is_child;
>> > >        Entry() : is_child(false) { }
>> > >      };
>> >
>> > I think the problem is that the code tries to use std::deque<Entry> as a
>> > member of struct Entry, before it is completely defined.  This is not
>> > allowed by the standard, although some libraries (e.g. GNU libstdc++)
>> > apparently permit it for some container types.
>> >
>> > You could try to work around it with -fdelayed-template-parsing, but I
>> > am not sure if it will help.  Alternatively, compile the code with
>> > libstdc++, or rewrite it to conform. :-)
>> >
>>
>> Thanks for the suggestions.  -fdelayed-template-parsing did not
>> help.  (Un)fortunately, I know very little about C++, so rewriting
>> the code is not option for me.  I guess I'll add a USE_GCC to the
>> port's Makefile to if it will build.
>>
>
> Sigh.  Adding USE_GCC isn't the solution.

Try USES=compiler:libstd++  - I think this is the syntax required.



-- 
Eitan Adler
Received on Tue Nov 12 2013 - 20:35:48 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:44 UTC