Errors, bugs, questions - page 1575

 
Slawa:
Show how the tab with optimization results table looks like

For example like this (Balance + max Recovery Factor) :


i.e. one nan is enough to kill the chart (it is dead even if there are no more nanos).

// by the way, from the table we can see that in this case nan is obtained with negative balance (initial deposit 1000000).

 
Renat Fatkhullin:

Verbatim, when you don't back up your own words with your own evidence.

You even gave a picture of someone else's, although you could have attached your own compilation log (not a picture).

....

If the compiler points to bugs in code, you must believe it.

And if you don't believe it, you may post the compilation log on the forum for parsing. There are errors and compilation time there too.

Ok, here's build 1159 where it compiles in about a second, build 1241 where it compiles in about 20 seconds, and build 1325 where it doesn't compile (errors)

Files:
MQL_1159.txt  7 kb
MQL_1241.txt  7 kb
MQL_1325.txt  8 kb
 
The 2600 warnings in the old build do not confuse you.

But 2000 warnings and bugs found by the new compiler suddenly make the compiler wrong?

I recommend that you sort out this mess in your code and clean it up.

Really, it's strange to make such a statement when the compiler is screaming about problems in the code. We purposely increase the requirements for code quality and don't want to hide problems by default. This is the finance industry.
 
Renat Fatkhullin:
2600 warnings in the old build doesn't confuse you.

But 2000 warnings and bugs found by the new compiler suddenly make the compiler wrong?

I recommend that you sort out this mess in your code and clean it up.

Really, it's strange to make such a statement when the compiler is screaming about problems in the code. We purposely increase the requirements for code quality and don't want to hide problems by default. This is the finance industry.

Warnings are warnings, bugs are errors. Everyone knows the difference. Everything compiled well until the last build. And if you slip some new rules into the compiler without informing us, is it my code to blame? Why are you shifting the problem from bad to worse?

There are just warnings like "implicit conversion from 'number' to 'string'", "possible loss of data due to 'string'" and "error messages". What do they have to do with errors generated by the latest compiler?

declaration without type
cannot apply function template
comma expected
undeclared identifier
'*' - pointer cannot be used
class type expected
no one of the overloads can be applied to the function call
object pointer expected
semicolon expected

So, it's obvious that some changes in language syntax appeared here, but we're silent. And you're moralizing here about "code quality", etc., diverting the conversation in the usual way.

 
Alexey Navoykov:

Warnings are warnings, but errors are errors, everyone knows the difference. Everything compiled well until the last build. And if you secretly introduced some new rules into the compiler without informing us, is my code at fault? Why are you shifting the problem from bad to worse?

There are just warnings like "implicit conversion from 'number' to 'string'", "possible loss of data due to 'string'" and "error messages". What do they have to do with those errors the latest compiler generates anyway?

without type
cannot apply function template
comma expected
undeclared identifier
'*' - pointer cannot be used
class type expected
no one of the overloads can be applied to the function call
object pointer expected
semicolon expected

So, it's obvious that some changes in language syntax appeared here, but we're silent. And you're moralizing here about "code quality", etc., diverting the conversation in the usual way.

if you have 2600 warnings, can you guarantee that all the warnings there are harmless, you've gone through all 2600

as for the head, only a sick head can accept so many warnings and think it's okay to get the right to do so.

 
Alexey Navoykov:

Warnings are warnings, but errors are errors, everyone knows the difference. Everything compiled well until the last build. And if you secretly introduced some new rules into the compiler without informing us, is my code at fault? Why are you shifting the problem from bad to worse?

There are just warnings like "implicit conversion from 'number' to 'string'", "possible loss of data due to 'string'" and "error messages". What do they have to do with errors generated by the latest compiler?

declaration without type
cannot to apply function template
comma expected
undeclared identifier
'*' - pointer cannot be used
class type expected
no one of the overloads can be applied to the function call
object pointer expected
semicolon expected

So, it's obvious that some changes in language syntax appeared here, but we're silent. And you're giving us a moral about "code quality" etc., diverting the conversation in the usual way.

Comrade, are you still going to pour shit all over the compiler, or maybe you will at least give me 20 lines of your opus in MQL? I don't know what infernal shit you have in your code. Or, do you think, that all telepaths will be here to listen to you, make sad eyes and agree with all this nonsense?

WHERE IS THE SPECIFIC CODE CAUSING ERRORS?

 
Alexey Navoykov:

Warnings are warnings, but errors are errors, everyone knows the difference. Everything compiled until the last build. And if you secretly introduced some new rules into the compiler without informing us, is my code to blame? Why shift the problem from bad to worse?

I'm not interfering. I have 26 years of non-stop programming under my belt.

Warnings are essentially errors if we're talking about the financial sector. And all the thousands of reports about "loss of sign, loss of accuracy, loss on ghosts etc" are a verdict on the quality of the code. Apparently you don't quite understand the implications.

Provide, in a reasonably complete form, the piece of code that the compiler pointed out as a bug, please.

Without that, the whole discussion looks unsightly and unfair.

 

I found an error in the EA logbook:

unknown command E0

What does it mean?

 

Renat Fatkhullin:

Please introduce the mechanism of namespaces in MQL5, you know how useful it is, because it does not look so elegant to put crutches in the form of macros to disable identical names in the declarations :)

 
Renat Fatkhullin:

...

Warnings are essentially errors if we are talking about the financial sector. And all the thousands of reports of "loss of sign, loss of accuracy, loss on ghosts etc" are a verdict on code quality. Apparently you don't quite understand the implications.

...
I should add that beginning with a certain level of project's complexity, the warnings have much more awful consequences than common compile-time errors. What is insidious about warnings is that the program works with them, but under different circumstances they start doing wonders which are very hard to fix.
Reason: