Un par de cosas:
1) en el if, has metido una asignación y no una comparación
2) Tienes que cambiar el sitio donde cambias el valor de "m", ya que el cambio SOLO lo hará una vez o ninguna.
Te dejo una sugerencia para evitar el uso de una variable intermedia "m"
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
if (Shape1->Brush->Color == clYellow) {
Shape1->Brush->Color = clRed;
Shape2->Brush->Color = clYellow;
}
else {
Shape1->Brush->Color = clYellow;
Shape2->Brush->Color = clRed;
}
}