What happens to me if I am Joe Q. Ignorant User running my GNU/Linux distribution with no source code on the machine, and I give my friend a copy of my gcc executable?
Under the GPL, this is only allowed if you obtained this executable with a written offer to provide source code, and you must pass along a copy of that written offer. If you got this executable by (for instance) downloading the executable from debian.org, where the source was available but you did not get it, then you can't redistribute. You have to get the source code, and redistribute with the source code.