Technically, UTC is a time standard, and GMT is a time zone, so the two, although equal, are not really the same thing. Also, you can set your iPhone to UTC in the World Clock, which I do as an amateur astronomer.
Time* UTC = Time(0);
Time* GMT = *UTC;
*UTC == *GMT; // True
UTC == GMT; // FalseIf, however you meant for that line to be: Time *GMT = UTC;
it would compile fine, but then your second comparison would evaluate to true, and the whole analogy be rather pointless.
Sure, C wouldn't work that way, but it's just supposed to be pseudocode anyway.