# Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.

### Protego

# MPLAB XC16 C-Compiler

- 1
- 2
…
- 269
- 270
- 271
- 272
- 273
…
- 365
- 366

Diagnostics
 2012-2013 Microchip Technology Inc. DS50002071C-page 271
function might be possible candidate for attribute noreturn
The compiler detected that the function does not return. If the function had been
declared with the noreturn attribute, then the compiler might have been able to
generate better code.
function returns address of local variable
Functions should not return the addresses of local variables, since, when the function
returns, the local variables are de-allocated.
function returns an aggregate
The return value of a function is an aggregate.
function name redeclared as inline
previous declaration of function name with attribute noinline
Function name was declared a second time with the keyword inline, which now
allows the function to be considered for inlining.
function name redeclared with attribute noinline
previous declaration of function name was inline
Function name was declared a second time with the noinline attribute, which now
causes it to be ineligible for inlining.
function identifier was previously declared within a block
The specified function has a previous explicit declaration within a block, yet it has an
implicit declaration on the current line.
G
GCC does not yet properly implement [*] array declarators
Variable length arrays are not currently supported by the compiler.
H
hex escape sequence out of range
The hex sequence must be less than 100 in hex (256 in decimal).
I
ignoring asm-specifier for non-static local variable identifier
The asm-specifier is ignored when it is used with an ordinary, non-register local
variable.
ignoring invalid multibyte character
When parsing a multibyte character, the compiler determined that it was invalid. The
invalid character is ignored.
ignoring option option due to invalid debug level specification
A debug option was used with a debug level that is not a valid debug level.
ignoring #pragma identifier
The specified pragma is not supported by the compiler, and is ignored.
imaginary constants are a GCC extention
ISO C does not allow imaginary numeric constants.
implicit declaration of function identifier
The specified function has no previous explicit declaration (definition or function
prototype), so the compiler makes assumptions about its return type and parameters.

- 1
- 2
…
- 269
- 270
- 271
- 272
- 273
…
- 365
- 366