This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

C166 Compiler

/* file1.c */
static void StaticFunction(void);

void main(void)
{
StaticFunction();
}

void StaticFunction(void)
{
/* something */
}

/* file2.c */
void SomeFunction(void)
{
StaticFunction(); /* unresolved external symbol */
}

In the example above StaticFunction was treated as static, although I changed my mind and removed the 'static' qualifier from its definition. But I forgot to change its declaration in the same file. Shouldn't the compiler have warned me? What does the ANSI C standard say about this?

0