Compiler bug?
Mojca Miklavec
mojca at macports.org
Thu Jul 21 02:19:07 PDT 2016
Reposting the question ...
On 17 July 2016 at 14:18, Mojca Miklavec wrote:
> Hi,
>
> I am unable to compile lilypond 2.19.45 (the problem must have started
> at around 2.19.42 or 43).
>
> One of the developers came up with the following minimal example (from
> the source code that Lilypond is using) that works with g++, but fails
> with clang++:
>
>
> class A {
> public:
> template <void (A::*mf)()>
> void zip () { }
> void fun () { }
> };
>
> class B : public A
> {
> public:
> using A::zip; // Fails to involve A::zip in overloading resolution
> template <void (B::*mf)()>
> void zip () { }
> } bex;
>
>
> void x ()
> {
> bex.zip <&B::fun> ();
> }
>
>
> Can someone with a deeper insight into C++ please clarify if this is a
> compiler bug or just something that gcc is happy with even if it's not
> according to the standard?
>
> He suggested to compile lilypond with GCC, but lilypond has lots of
> dependencies and I'm not sure if stdlib (non-)compatibility would play
> a role or not.
>
> Thank you,
> Mojca
I just wanted to add that I successfully compiled the (pre-)latest
version of lilypond-devel (2.19.44) with gcc 5 and it seems to work.
Perhaps it doesn't have any dependencies with C++ api.
Mojca
More information about the macports-dev
mailing list