Du hast die Klammer vergessen.
PORTC = UART1_Receive();


UART1_Receive alleine ist tatsächlich ein integer (nämlich die adresse von der funktion), da hat de GCC schon recht.