Hi everybody,
I saw this question here once but can't really make anything from the answers, so here it goes:
I'm working on a project, compiling it succesfully over and over again as I work on it. I suddenly get the message "Internal compile error" with no additional info.
In the documentation I may have found something, compile error #134 (only because the word internal is included) Compilation Errors - Codes of Errors and Warnings - Constants, Enumerations and Structures - MQL5 Reference - Reference on algorithmic/automated trading language for MetaTrader 5. But I have no idea if this is what I'm looking for, since the compiler doesn't give me more than that.
Since I worked on it and it compiled successfully there was an update to build 2994 and I leaned to blaming the update, but didn't find anybody else complaining about it.
Also very interesting:
Using F7 to compile gives me that error, using F5 runs the code smoothly and takes changes to the code.
Can anybody please help me understand this error message?
Thank you guys,
0zuhan
Build 2994 is a beta. You should downgrade to 2981 which is the last release.
Thank you so much, I'll try that. Also, following the #134 error anyway opens up new things to learn for me :-D
Have a nice evening and best regards,
0zuhan
Hi Everyone,
I have the same problem with build 2994 which is no longer in beta (I only update to the latest release version). The compiler reports 'internal compiler error' with no error code.
I've tried recompiling a lot of other systems, many of which fail with this same internal compiler error. I put together a very simple test system with a single instance of a simple class and this also produced the same error. Something is seriously broken.
I've gone back to an earlier release in order to keep working on my system, but would appreciate this bug being squashed sooner rather than later.
Thanks
Paul
I've tried recompiling a lot of other systems, many of which fail with this same internal compiler error. I put together a very simple test system with a single instance of a simple class and this also produced the same error. Something is seriously broken. I've gone back to an earlier release in order to keep working on my system, but would appreciate this bug being squashed sooner rather than later.
2994 is beta! Stop kidding yourself. Don't connect to MetaQuotes Demo Servers if you don't want to be updated to beta versions.
Forum on trading, automated trading systems and testing trading strategies
need help with internal compile error
Alain Verleyen, 2021.07.11 19:48
Build 2994 is a beta. You should downgrade to 2981 which is the last release.
2994 is beta! Stop kidding yourself. Don't connect to MetaQuotes Demo Servers if you don't want to be updated to beta versions.
Thanks for that Fernando, I didn't realise you always got the beta version if you connected to the Metaquotes servers.
For anyone interested, I've pinned down what the cause of the issue. Metaquotes seem to have depreciated the creation of an indicator with universal parameters. ie;
CiRSI rsi; //--- This works rsi.Create(_Symbol,_Period,14,PRICE_CLOSE); //--- This does not MqlParam params params[2]; params[0].type = TYPE_INT; params[0].integerValue = 14; params[1].type = TYPE_INT; params[1].integerValue = PRICE_CLOSE; rsi.Create(_Symbol,_Period,IND_RSI,ArraySize(params),params);
I have a class for flexibly handling parameters for initialising indicators in which the indicator is created like this:
// Initialise the sensor: // paramGroups is an associative array of parameter lists // paramList is a class for creating and accessing arrays of MqlParam // CREATE_INDICATOR is a macro: // #define CREATE_INDICATOR(myInd,symbol,period,indType,params) \ // myInd.CIndicator::Create(symbol,period,indType,params.ParamCount(),params.Params().p) //--- bool CRsiSensor::Init(CParamGroups *paramGroups) { CParamList *params = paramGroups.GetList("Rsi"); if(!CREATE_INDICATOR(i_rsi,m_symbol,m_period,IND_RSI,params)) { PrintFormat("%s : Failed to init Rsi indicator for (%s,%s)", __FUNCSIG__,m_symbol,EnumToString(m_period)); return(false); } i_rsi.RefreshCurrent(true); return(true); }
This has proved to be a very useful generalised approach for initialising expert modules that use indicators. Unfortunately the compiler now fails to compiler this, doesn't report the cause of the error but just stops with 'internal compiler error'
Hopefully they will reconsider their decision to depreciate the creation of an indicator with universal parameters.
Paul
![MQL5 - Language of trade strategies built-in the MetaTrader 5 client terminal](https://c.mql5.com/i/registerlandings/logo-2.png)
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Hi everybody,
I saw this question here once but can't really make anything from the answers, so here it goes:
I'm working on a project, compiling it succesfully over and over again as I work on it. I suddenly get the message "Internal compile error" with no additional info.
In the documentation I may have found something, compile error #134 (only because the word internal is included) Compilation Errors - Codes of Errors and Warnings - Constants, Enumerations and Structures - MQL5 Reference - Reference on algorithmic/automated trading language for MetaTrader 5. But I have no idea if this is what I'm looking for, since the compiler doesn't give me more than that.
Since I worked on it and it compiled successfully there was an update to build 2994 and I leaned to blaming the update, but didn't find anybody else complaining about it.
Also very interesting:
Using F7 to compile gives me that error, using F5 runs the code smoothly and takes changes to the code.
Can anybody please help me understand this error message?
Thank you guys,
0zuhan