Inlining with gcc 3.4.3

kreinims wrote on Monday, April 18, 2005:

I don’t know if previous version of gcc behave different but
with newest WinAVR i can see warnings like:
task.h:922: warning: inlining failed in call to ‘vTaskSwitchContext’: function body not available

rtel wrote on Monday, April 18, 2005:

The inlining is a little optimistic.  It only has an effect with one of the x86 ports (one of the original ports).  Previously I doubt very much it actually got inlined anyway so it is probably only the generation of the warning that has changed.

However, I am using gcc V3.4.3 and do not see the warning.  Are you using the files as downloaded?

To remove the warning you can add the line:

#define inline

at the bottom of the portmacro.h file you are using.  This will #define away all the inlines without actually changing the compiler output.

Incidentally, V3.0.0 of FreeRTOS no longer uses the batch files to build the AVR demo.  Improvements in the debug support within WinAVR means they are no longer required.


nobody wrote on Tuesday, April 19, 2005:

I use the -Winline option to see if my own inlines are working
I didn’t use the batch files