Indis compiled against build 890 throwing bizarre errors - page 2

 
Hoodlum:

I've got a bunch of indis I wrote, not recompiled since my MT4 auto updated to 890, all working fine.

I needed to make some minor changes today, and recompiled against 890, and suddenly strange things are happening.

For one, an ArrayResize statement in a section of code is now completely failing to work. Debug statements confirm the array is the same size before and after the ArrayResize command is executed. This is code I haven't touched for months.

Additionally, during the process of trying to chop code around to find out what the issue was, I kept getting Access Violation write to 0x00000000 errors coming up in the Experts tab.

I use a include file of common functions for all my indis, which reference some of the Win32 DLLs - I half suspect the issues lies with this.

Has anyone else had similar problems?

It's going to be a nightmare to try and unpick all my code to try and find what specifically is causing the error - it seems completely non-deterministic. When I comment out a line simply declaring an integer variable after the ArrayResize command for instance, it works - when I put the line back in, the command fails.

Cheers


Same error here (see honest_knave's link).

And yes, I got an access violation error too, like you.
 
Ok glad to know it's not just me. They messed something up for sure in the compiler it seems. Hope it doesn't take them too long to respond.
 

I got a response, the "fix" is as follows:

Hello. Thank you for your appeal! This bug was fixed in a new build. 

There is 2 ways for you:

      • Waiting for a new MT4 version
      • Use static modifier for array "tempValues[]" or define it in global scope 
I've asked when the new build will be released, I'll report back if they tell me.
 
I believe that 900 is released on Thursday. It is notified near the top of the index
 
Ah yes I see the post near the top of the list. Thank you.
 

What a relief...

I had started to believe that i am crazy...

Same thing happened to me with one of my indis, which caused me a lot of troubles in my EA.

When i tried to fix that and after of endless hours of debugging i realized that iAMOnArray() which my indicator uses, in the new hybrid MQL4=5 this function doesn't exists anymore.

I am sure that the compiler changed dramatically and the proof of that is that the backup file of the indi is still working... if you don't compile it.

So it seems like an extra push tοrwαrds to MQL5.

I also post a comment ( https://www.mql5.com/en/forum/157331 )  for help.

Reason: