[previous] 0347 [next] Using 'extern' in the definition of a global variable.
K+R compatibility

The extern storage-class specifier is being applied to the definition of an object with external linkage. In early versions of the C language, the keyword extern always signified a declaration.

Be aware that message 0347 is only generated when the "-k+r x" option is enabled. Messages 0347 and 3603 are functionally equivalent. When the "-k+r x" option is enabled, message 3603 is no longer generated.

For example:


/*PRQA S 2017,3207,3210,3211,3408,3447 ++*/
/*****************************
 * OPTIONS: -k+r x
 ****************************/

int        i = 1;                   /*              */
extern int j = 1;                   /* Message 0347 */
static int k = 1;                   /*              */
extern int m = 1;                   /* Message 0347 */
extern int n;                       /*              */

See also:

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