On Tuesday, 10 September 2013 at 21:03:57 UTC, Andrej Mitrovic wrote:
Bug or feature?

You will get a linker error when you try to use the function.

This is a feature, because you can implement this function later or
even in another module (and set mangling to match).

Example of the former:

-----
interface A {
public:
    final void bar();  // declaration

    /** ... */

    final void bar() { }  // implementation
}
-----

For the latter:

-----
interface A {
public:
    final void bar();
}

class B : A {
}

pragma(mangle, A.bar.mangleof)
void A_bar_impl(A _this) { }
-----

The mangle pragma feature is new in git-head.

Ah, thanks for explanation.

Reply via email to