I have been testing inline function calls in C++.
Thread model: win32
gcc version 4.3.3 (4.3.3-tdm-1 mingw32)
Stroustrup in The C++ Program
Like Michael Kohne mentioned, the inline keyword is always a hint, and GCC in the case of your function decided not to inline it.
Since you are using Gcc you can force inline with the __attribute((always_inline)).
Example:
/* Prototype. */
inline void foo (const char) __attribute__((always_inline));
Source:GCC inline docs