[previous] 3243 [next] inline function '%s' is also an 'external definition'.
Functions REFERENCE - ISO:C99-6.7.4 Function specifiers - Semantics

An inline function is being declared as an external definition.

Defining an inline function with external linkage is always dangerous and it is recommended that inline functions should always be declared with the static storage class specifier.

For example:


/*PRQA S 1055,2017,3210,3408,3447 ++*/

extern inline int f1(void)
{                                         /* 3243 */
    return 0;
}


inline int f2(void)                       /* 3240 */
{
    return 0;
}

extern int f2(void);                      /* 3243 */

inline int f3(void)                       /* 3240 */
{
    return 0;
}

inline int f3(void);

See also:

QA·C Source Code Analyser 8.1.2
© 2013 Programming Research.
www.programmingresearch.com
Personality Groups | Glossary | Message Index Contents