Yes, sounds very good to me. I'm sure there are more places which could
use this.
Or perhaps there are some magic flags to gcc so that it doesn't inline
so aggressively in situations like this? IOW is it gcc breakage, or
design - but maybe with defaults that don't fit well in the limited
stack... (well, I suppose the "for N mutually exclusive helper functions
each with stack usage S, use about N*S stack when inlining them all" bit
probably isn't a feature.)
FWIW the XFS team finally just wrested control from GCC.
http://oss.sgi.com/archives/xfs/2006-11/msg00195.html
-Eric
--