C ++ funciones en línea utilizando GCC: ¿por qué CALL?

He estado probando llamadas a funciones en línea en C ++.

Thread model: win32
gcc version 4.3.3 (4.3.3-tdm-1 mingw32)

Stroustrup en el lenguaje de programación C ++ wirtes:

El especificador en línea es una pista para el compilador de que debería intentar generar código [...] en línea en lugar de establecer el código para la función una vez y luego llamar a través del mecanismo de llamada de función habitual.

Sin embargo, descubrí que el código generado simplemente no está en línea. Hay unLLAMAD instrucción para el isquare función.

alt text http://i42.tinypic.com/8ys3f4.jp

¿Por qué está pasando esto? ¿Cómo puedo usar funciones en línea entonces?

EDITAR Las opciones de línea de comando utilizadas:

**** Build of configuration Debug for project InlineCpp ****

**** Internal Builder is used for build               ****
g++ -O0 -g3 -Wall -c -fmessage-length=0 -osrc\InlineCpp.o ..\src\InlineCpp.cpp
g++ -oInlineCpp.exe src\InlineCpp.o

Respuestas a la pregunta(14)

Su respuesta a la pregunta