#include <stdio.h>

#define macro(a)   printf("foo: %i\n",    a)
#define macro(a,b) printf("bar: %i %i\n", a, b)

int main()
{
	macro(1);
	macro(2, 3);
	return 0;
}

/*
macro-overload.c:4:1: warning: "macro" redefined
macro-overload.c:3:1: warning: this is the location of the previous definition
macro-overload.c:8:9: macro "macro" requires 2 arguments, but only 1 given
macro-overload.c: In function `main':
macro-overload.c:8: error: `macro' undeclared (first use in this function)
*/
