Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 12 Nov 2013 09:55:56 -0800
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        Dimitry Andric <dim@FreeBSD.org>
Cc:        freebsd-current@FreeBSD.org, David Chisnall <theraven@FreeBSD.org>
Subject:   Re: Are clang++ and libc++ compatible?
Message-ID:  <20131112175556.GA3319@troutmask.apl.washington.edu>
In-Reply-To: <E0FE40D9-726C-4501-B31A-3622510C1C68@FreeBSD.org>
References:  <20131112163219.GA2834@troutmask.apl.washington.edu> <77CB2B92-216A-4C80-B033-7E582B5F0DFC@FreeBSD.org> <20131112165422.GA2939@troutmask.apl.washington.edu> <E0FE40D9-726C-4501-B31A-3622510C1C68@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Nov 12, 2013 at 06:37:39PM +0100, Dimitry Andric wrote:
> On 12 Nov 2013, at 17:54, Steve Kargl <sgk@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.

-- 
Steve



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20131112175556.GA3319>