Ok, thanks for the clarification. On Fri, Jul 22, 2022 at 11:03 AM Tom Lane <t...@sss.pgh.pa.us> wrote: > > Junwang Zhao <zhjw...@gmail.com> writes: > > I notice that there are lots of *static inline functions* in header files, > > the header file's content will go into each translation unit at preprocess > > phase, that means all the c file including the header will have a copy > > of the static inline function. > > We are assuming that the compiler will not emit unused static functions. > This has been default behavior in gcc for ages. If you're unfortunate > enough to have a compiler that won't do it, yes you're going to have a > bloated binary. > > > IMHO, the header files should only include the inline function's > > declaration, > > and the definition should be in c files. > > Then it couldn't be inlined, defeating the purpose. > > regards, tom lane
-- Regards Junwang Zhao