Why can't GHC automatically consider *every* function as INLINABLE? Let the GHC heuristics decide what is worthy of being inlined. What's the downside?
At a guess, performance of both .hi file handling and analysis for inlining. Don't people already gripe about how "slow" ghc is?
Also, inlining the wrong thing can completely derail other optimizations (e.g. fusion).