lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Master fails to compile


From: David Kastrup
Subject: Re: Master fails to compile
Date: Tue, 26 May 2015 08:10:17 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux)

Keith OHara <address@hidden> writes:

> Phil Holmes <mail <at> philholmes.net> writes:
>
>> 
>> I've managed to work out how to upgrade Ubuntu 10.04 to gcc 4.8.1 
>> with the help of StackOverflow, and can now compile again.
>
> I'm still working on sorting out dependencies.
>
> The troublesome macro asks is used in only three places, creating
> in each place a templated function call with the same name, asking
> the compiler to call the correct one of four variants of the function
> based on the argument count of a passed function pointer.
>
> If I can't get the dependencies worked out I'll be tempted to skip
> the macro and use scm_call_1() through scm_call_3() in place of each
> of the three macro expansions.

Why?  Seriously.  10.04 is not even supported by Ubuntu itself any more.

I have a patch cooking that will convert hundreds of Scheme callbacks to
member functions with that technique.  Part of the reason is to get
argument type checks in for stuff like

(ly:grob::stencil-height 0)

which just segfaults right now.  Having a member function instead of a
static member makes the code simpler while the static template generated
by this technique does the typechecking while creating a this-pointer
from an SCM.  And if you call the member function via C++ with an
existing instance pointer, you bypass the typechecking.

-- 
David Kastrup



reply via email to

[Prev in Thread] Current Thread [Next in Thread]