- 
The classic approach leads to lots of extra work:
- 
Forking a new cc1(andas)
for each source file.
- 
Initializing cc1internal state (such
as predefined declarations).
- 
Processing external modules (header files) is
re-done each time.
 
- 
The latter is most significant as it leads to
O(N2) behavior.