Metatrader 4 Build 1069: mql4 not supported any more?

To add comments, please log in or register
cbs2002
22
cbs2002  

Hello,

since the update to build 1069 metatrader 4 the editor accepts only mql5-syntax. What happens? I cannot compile my mql4-source any more! Please help me!

Biantoro Kunarto
20151
Biantoro Kunarto  
cbs2002:

Hello,

since the update to build 1069 metatrader 4 the editor accepts only mql5-syntax. What happens? I cannot compile my mql4-source any more! Please help me!

I still can use mql4 language for MT4 build 1069. Until now I have no problem with compiling the mq4 file. Could you show the code, please?
Ex Ovo Omnia
3373
Ex Ovo Omnia  

Changes in the 1069 compiler (Metaeditor v.1596) are really weird. I tried to fix the code, but it is affected too much. I do not understand the reason why the language specification changed, especially when the MQL4 development was stopped. Anyway, I wonder if it affects the MQL5, I had no time left to test it.

  • Explicit casting of structures stopped to compile in 1066. 
  • Implicit casting of structures stopped to compile in 1069.  
  • ArrayCopy of object pointers stopped to compile in 1069. It actually prevents me from using the array of pointers, and rollback to the older compiler is necessary 
Moreover, the Metaeditor stopped advancing the output pane view to the first error/warning line, but shows the first line instead (no errors shows up in this view, but rather the included files).
Alain Verleyen
36572
Alain Verleyen  
Ex Ovo Omnia:

Changes in the 1069 compiler (Metaeditor v.1596) are really weird. I tried to fix the code, but it is affected too much. I do not understand the reason why the language specification changed, especially when the MQL4 development was stopped. Anyway, I wonder if it affects the MQL5, I had no time left to test it.

  • Explicit casting of structures stopped to compile in 1066. 
  • Implicit casting of structures stopped to compile in 1069.  
  • ArrayCopy of object pointers stopped to compile in 1069. It actually prevents me from using the array of pointers, and rollback to the older compiler is necessary 
Moreover, the Metaeditor stopped advancing the output pane view to the first error/warning line, but shows the first line instead (no errors shows up in this view, but rather the included files).

Agree, is it a change ? bugs ? Please support my request.

Ex Ovo Omnia
3373
Ex Ovo Omnia  
Alain Verleyen:

Agree, is it a change ? bugs ? Please support my request.


Well, I support your request, though I have read similar requests several times in the past, without any effect.
Alain Verleyen
36572
Alain Verleyen  
Ex Ovo Omnia:

Well, I support your request, though I have read similar requests several times in the past, without any effect.
I know. You are one of the professional building his business around MT4/MT5, I think we need to try something (all professionals together), find and propose solutions. I am not requesting something and publishing it just to talk, I want to improve and change things, obviously I can't do it alone. We will see if Metaquotes is open or close to it.
enotis
8
enotis  
Ex Ovo Omnia:

Changes in the 1069 compiler (Metaeditor v.1596) are really weird. I tried to fix the code, but it is affected too much. I do not understand the reason why the language specification changed, especially when the MQL4 development was stopped. Anyway, I wonder if it affects the MQL5, I had no time left to test it.

  • Explicit casting of structures stopped to compile in 1066. 
  • Implicit casting of structures stopped to compile in 1069.  
  • ArrayCopy of object pointers stopped to compile in 1069. It actually prevents me from using the array of pointers, and rollback to the older compiler is necessary 
Moreover, the Metaeditor stopped advancing the output pane view to the first error/warning line, but shows the first line instead (no errors shows up in this view, but rather the included files).

While Metaquotes are solving the problem with ArrayCopy, here is a temporary solution - a generalized function for copying objects of structures / classes and pointers to objects. Good luck.

template<typename D, typename S>
int ArrayCopy
(
   D & dst_array[], 
   S & src_array[], 
   int dst_start = 0, 
   int src_start = 0, 
   int count     = WHOLE_ARRAY
)
{
   int dst_size = ArraySize(dst_array);
   int src_size = ArraySize(src_array);
   
   if(src_start >= src_size)
   {
      return -1;
   }    
   
   if(count == WHOLE_ARRAY || count > src_size - src_start)
   {
      count = src_size - src_start;
   }
   
   if(dst_start + count > dst_size)
   {
      ArrayResize(dst_array, dst_start + count);
   }
   
   src_size = src_start + count;
   
   for(; src_start < src_size; ++src_start, ++dst_start)
   {
      dst_array[dst_start] = src_array[src_start];
   }
   
   return count;
}


Andrey Barinov
42355
Andrey Barinov  
Ex Ovo Omnia:

Changes in the 1069 compiler (Metaeditor v.1596) are really weird. I tried to fix the code, but it is affected too much. I do not understand the reason why the language specification changed, especially when the MQL4 development was stopped. Anyway, I wonder if it affects the MQL5, I had no time left to test it.

  • Explicit casting of structures stopped to compile in 1066. 
  • Implicit casting of structures stopped to compile in 1069.  
  • ArrayCopy of object pointers stopped to compile in 1069. It actually prevents me from using the array of pointers, and rollback to the older compiler is necessary 
Moreover, the Metaeditor stopped advancing the output pane view to the first error/warning line, but shows the first line instead (no errors shows up in this view, but rather the included files).

RE:ArrayCopy #19005

Try compiling your .mq4 codes with compiler delivered and opened with MT5 platform (even though it has the same build number, the results are different for some reason).

Mete Yalçıner
16
Mete Yalçıner  
cbs2002:

Hello,

since the update to build 1069 metatrader 4 the editor accepts only mql5-syntax. What happens? I cannot compile my mql4-source any more! Please help me!

use  exmetaeditor exe by command prompt for compiling ....
Juan Fernandez
2065
Juan Fernandez  
Ex Ovo Omnia:

Changes in the 1069 compiler (Metaeditor v.1596) are really weird. I tried to fix the code, but it is affected too much. I do not understand the reason why the language specification changed, especially when the MQL4 development was stopped. Anyway, I wonder if it affects the MQL5, I had no time left to test it.

  • Explicit casting of structures stopped to compile in 1066. 
  • Implicit casting of structures stopped to compile in 1069.  
  • ArrayCopy of object pointers stopped to compile in 1069. It actually prevents me from using the array of pointers, and rollback to the older compiler is necessary 
Moreover, the Metaeditor stopped advancing the output pane view to the first error/warning line, but shows the first line instead (no errors shows up in this view, but rather the included files).

Service Desk said that is invalid now. The worst is MQL language lacks many features working with structures. You cant have pointers to structures and now you cant use structures in class templates too. This broken all my work because I use this kind of things. I dont understand what benefit have remove one feature needed for have some flexibility in code
fxsaber
10620
fxsaber  
Juan Fernandez:

Service Desk said that is invalid now. The worst is MQL language lacks many features working with structures. You cant have pointers to structures and now you cant use structures in class templates too. This broken all my work because I use this kind of things. I dont understand what benefit have remove one feature needed for have some flexibility in code
Give an example of what you mean?
12
To add comments, please log in or register