GDCC is an alternative ACS compiler, and also a standards-compliant compiler of the C programming language to ACS VM bytecode.
The ACS compiler part of GDCC is called GDCC-ACC. The rest is the C compiler.
function int f(void)
{
DoSomething();
// accidentally wrote "int" instead of "void"
// This function will now proceed to some other random function's code
}
Functions that return a value but don't have “return” in the code will execute some other random function's code due to the compiler ignoring the missing return statement.
function void f(void)
{
int x = g(1, 2, 3);
print(d:x);
}
function void g(void)
{
// This function does NOT return a value
// and does NOT accept 3 arguments.
}
If a function is used before it's declared, GDCC allows ANY call to the function, unlike ACC and BCC.
Some fatal compiler errors do not result in an error message, but in a compiled ACS file that is 0 bytes long.
Bad gen Retn means that the name of the function is already used elsewhere.