require implicit *TypeClass instance at macro invocation point

Advantage: Macro won't get executed for `C[T]` when no `TypeClass[C]` instance is in scope