# Vault 7: Projects

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

### Protego

# MPLAB XC16 C-Compiler

- 1
- 2
…
- 271
- 272
- 273
- 274
- 275
…
- 365
- 366

Diagnostics
 2012-2013 Microchip Technology Inc. DS50002071C-page 273
identifier is narrower than values of its type
A bit-field member of a structure has for its type an enumeration, but the width of the
field is insufficient to represent all enumeration values.
storage class is not at beginning of declaration
The specified storage class is not at the beginning of the declaration. Storage classes
are required to come first in declarations.
ISO C does not allow extra ; outside of a function
An extra ; was found outside a function. This is not allowed by ISO C.
ISO C does not support ++ and -- on complex types
The increment operator and the decrement operator are not supported on complex
types in ISO C.
ISO C does not support ~ for complex conjugation
The bitwise negation operator cannot be use for complex conjugation in ISO C.
ISO C does not support complex integer types
Complex integer types, such as __complex__ short int, are not supported in ISO C.
ISO C does not support plain complex meaning double complex
Using __complex__ without another modifier is equivalent to complex double which
is not supported in ISO C.
ISO C does not support the char kind of format format
ISO C does not support the specification character char for the specified kind of
format.
ISO C doesnt support unnamed structs/unions
All structures and/or unions must be named in ISO C.
ISO C forbids an empty source file
The file contains no functions or data. This is not allowed in ISO C.
ISO C forbids empty initializer braces
ISO C expects initializer values inside the braces.
ISO C forbids nested functions
A function has been defined inside another function.
ISO C forbids omitting the middle term of a ?: expression
The conditional expression requires the middle term or expression between the ? and
the :.
ISO C forbids qualified void function return type
A qualifier may not be used with a void function return type.
ISO C forbids range expressions in switch statements
Specifying a range of consecutive values in a single case label is not allowed in ISO C.
ISO C forbids subscripting register array
Subscripting a register array is not allowed in ISO C.
ISO C forbids taking the address of a label
Taking the address of a label is not allowed in ISO C.
ISO C forbids zero-size array name
The array size of name must be larger than zero.

- 1
- 2
…
- 271
- 272
- 273
- 274
- 275
…
- 365
- 366