<Fix your topic title - The rules state they should be descriptive>
#1

Code:
Header size:          17456 bytes
Code size:          1570812 bytes
Data size:          2818340 bytes
Stack/heap size:      16384 bytes; estimated max. usage: unknown, due to recursion
Total requirements: 4422992 bytes
Hello guys, I hope that somebody will help me or point me in a good direction.
I was preparing a new update for about a whole month and for that time the script had debug parameter passed in the compiler (-d3) and the crashdetect plugin loaded, so i didn't pay attention to the message, because that is normal with debug mode. But today when i finally finished all the necessary stuff i removed the debug mode and that message showed up. i am not a scripting beginner so please don't write some noobish stuff. is there a fast solution to detect the root of the problem? i've spent 2 last hours trying to find the problem, but without any success. Could anyone suggest something that could help me? I am desperate because the release date of the update is in 2 days..
Reply
#2

Your code size is too much big.Lower your strings cells.
Reply
#3

I removed allmost all systems and all timer publics (about 40-50% of the total script) and the same message shows, it must be something other.
Reply
#4

Look at all the strings in the mode, a lot are probably 256 when they don't need to.
Reply
#5

It means the compiler can't detect how much dynamic memory it would need at most.

Simply add this at the top of your script and don't worry anymore:
pawn Code:
#pragma dynamic 1000000
Reply
#6

@VincentDunn - none of the strings are above 128 cells (except 2-3 query strings for mysql i/o), so that shouldn't be the issue


@Slice thank you for the workaround, but do you know why that happens in the first place? Why the compiler can't detect the ammount of memory which is required?
Reply
#7

The reason is, as it says, recursion. What that means is a function is calling itself or another function that calls it. Because of this, the compiler can't know how many times this function will be called "on top of itself", so it doesn't know how much memory it will need at most.
Reply
#8

So basically i made somewhere a "loop" where a func. calls itself or another func where the other calls the first one again?
Reply
#9

Pretty much, yeah.
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)