[Development] Qt LTS & C++11 plans (CopperSpice)
Ansel Sermersheim
ansel at copperspice.com
Wed Jul 1 04:40:55 CEST 2015
On 6/30/15 1:01 PM, Thiago Macieira wrote:
> On Tuesday 30 June 2015 09:37:59 Ansel Sermersheim wrote:
>> Our goal with CopperSpice is to use modern C++ internally to leverage
>> everything we can from the language. We want developers of CopperSpice
>> applications to have the full power of C++ available in all parts of
>> their code. For example, with moc removed we support template classes
>> that inherit from QObject. We support passing method pointers as signal
>> arguments.
>
> You need to use -fvisibility-inlines-hidden and retry. I don't think your
> solution works under those circumstances.
As we mentioned we have already changed parts of the CopperSpice
registration system. This will be released within the next month or so.
We are definitely aware of -fvisibility-inlines-hidden, and we will look
into supporting it.
>> We are going to fully support exceptions, and make
>> exception safety guarantees where possible.
>
> Unless you're going to rewrite the entire GUI, widgets, networking and other
> libraries from scratch, you're not going to get exception-safety.
Yes, many parts will need to be redone and we are starting with the
container classes.
>> These are some of the limitations that frustrated us when using Qt in an
>> existing codebase.
>
> You're making trade-offs. One of them, given your presentation, is that there's
> no current version of MSVC that will work with your codebase. Another is that
> you're replacing a code generator by a lot of boilerplate macros.
We do not feel that requiring a compiler to support C++11 is
unreasonable. Our main issues with MSVC is with constexpr and expression
SFINAE. MS has added partial support of constexpr for MSVC 2015,
although they are still reported to have a few issues. They will get
there eventually. No word yet on when expression SFINAE will be added.
Yes, we make use of macros as macros were intended to be used. We
strongly believe the syntax for our macros is concise and clean, and
that this tradeoff is worthwhile.
Ansel
CopperSpice Co-Founder
www.copperspice.com
More information about the Development
mailing list