You can already do that: mixin template AdviceX() { int fun(int x) { ... return fun_without_advice(); } } class Foo { mixin AdviceX; int fun_without_advice(int x) { } }