4.1.5. __forceinline

The __forceinline keyword forces the compiler to compile a C or C++ function inline.

The semantics of __forceinline are exactly the same as those of the C++ inline keyword. The compiler attempts to inline a function qualified as __forceinline, regardless of its characteristics. However, the compiler does not inline a function if doing so causes problems. For example, a recursive function is inlined into itself only once.

__forceinline is a storage class qualifier. It does not affect the type of a function.

Note

This keyword has the function attribute equivalent __attribute__((always_inline)).

Example

__forceinline static int max(int x, in y)
{
    return x > y ? x : y; // always inline if possible
}

See also

Copyright © 2007, 2010 ARM Limited. All rights reserved.ARM DUI 0348A
Non-Confidential