== What's the difference between extern and static inline ? == Let Linus explain : - "static inline" means "we have to have this function, if you use it but don't inline it, then make a static version of it in this compilation unit" - "extern inline" means "I actually _have_ an extern for this function, but if you want to inline it, here's the inline-version" But also see Inline Functions in C.