I get this message when compiling my program. It's about 25KB big, and MC have 32KB... What should I do to compile bigger programs anway, because program is not completed yet, I have to add some more stuff.
I don't use.
How long is your longest line ? How long is your longest expression (in characters) ?
What is nest in C?
Blocks in C are delimited by curly braces {}. This example contains two blocks, one of them nested in the other:
if(somecondition) { do_stuff(); for(somevariable = 0; somevariable < 16; somevariable++) { do_more_stuff(); } }
25KB big compiled programme HAVE to be big and complex in C.
The maximum nesting depth has absolutely nothing to do with how large the program is. It merely depends on how unmaintainable the programmer wants to make his "creation".
OK. Thank you. Then 2 is negative. I don't have 32 level deep nesting...
So the question remains: How complex is too complex? :)
Compile every source file separately to find the file that is causing the problem, then have a good look at it.
"I don't have 32 level deep nesting"
Maybe you don't intend to, but it can be quite easy to achieve by accident!
eg, if you forget a closing brace, the next opening brace is then effectively another level of nesting...
similarly, if you are playing preprocessor tricks, and one of your macro expansions is broken, it could lead to similar effects...
"find the file that is causing the problem, then have a good look at it."
And if you can't see it, remove half of the source code: if the error persists, then you know that it's in the remaining half of the source; if the error goes away, then it's probably in the half that you removed.
Repeat as necessary!
"How long is your longest expression (in characters) ?"
Number of characters is not directly relevant.
More important is things like number of operators, function calls, brackets...
Note that "nesting" also applies to brackets (parentheses) - the following expression contains (redundant) nested parentheses:
x = ( (a) + (b) )
Not directly ... however, it is easier to cram a complex expression into 500 characters than into 72.