Page 123 - C-Language
P. 123
1) exact wording:
C99
If an identifier has no linkage, there shall be no more than one declaration of the identifier (in a
declarator or type specifier) with the same scope and in the same name space, except for tags as
specified in 6.7.2.3.
Unary arithmetic operators
The unary + and - operators are only usable on arithmetic types, therefore if for example one tries
to use them on a struct the program will produce a diagnostic eg:
struct foo
{
bool bar;
};
void baz(void)
{
struct foo testStruct;
-testStruct; /* This breaks the constraint so must produce a diagnostic */
}
Read Constraints online: https://riptutorial.com/c/topic/7397/constraints
https://riptutorial.com/ 99

