> But GCC isn't the only free compiler out there, and yet no other> compiler, paid or free, managed to attain the same level of> popularity. Couldn't it be possible that GCC's success is owed to> some determining factor other than price?

In former times it was common practice to use one compiler for
development, and another one for production. The development compiler
has to integrate nicely into the development system, with short
turn-around times, and has to provide the best diagnostics possible.
The production compiler instead has to provide the best optimization,
while diagnostics and turn-around times are quite unimportant.

Obviously it's more economic to maintain multiple code generators in a
common compiler framework, instead of writing and maintaining an
dedicated compiler for every target, as most isolated commercial or
hobby compiler writers did.

My experience with "highly optimizing" compilers, in detail MSC, sums
up in "the new version ejects less NOPs than the preceding one". This
may have changed nowadays, though...