[previous] MISRA C:2012  Rule-8.7:  (Advisory) [next] Functions and objects should not be defined with external linkage if they are referenced in only one translation unit

Example Code:


#include "misra.h"
#include "m3cmex.h"
extern int16_t rule_0807a(void);                        /* 3447 */
extern int16_t x0807;                                   /* 3447 */

int16_t x0807 = 1;

extern int16_t rule_0807( void )
{
    x0807 = rule_0807a();

    return 1;
}

extern int16_t rule_0807a(void)
{
    return x0807 + s16a;
}



QAC messages that encompass this guideline:

1504 The object '%1s' is only referenced in the translation unit where it is defined.
1505 The function '%1s' is only referenced in the translation unit where it is defined.



(c) The Motor Industry Research Association, 2012
QA C Source Code Analyser 8.1.2
MISRA C:2012 Compliance Module 1.0
© 2013 Programming Research
www.programmingresearch.com
Personality Groups | Glossary | Message Index | MISRA C:2012 Rule Index Contents