C macros, not C++ templates.

@cmr rightfully points out that C macros are worse, and share the
same name.