Directive-based overloading