The overloading code for Scilab 6.0 functions is "function" instead of "mc" => back-compatibility issues
@sgougeon)
Reported by Samuel GOUGEON (BUG DESCRIPTION:
----------------
From there: https://www.mail-archive.com/users@lists.scilab.org/msg05648.html
At least for [,] (c) and [;](f) operators, the overloading code for the Scilab function type has been changed from "mc" to "function".
"function" is definitively clearer than "mc", but
* this change yields back-compatibility issues
* this change is not documented
in Scilab 5:
------------
[sind sind]
function %mc_c_mc(a,b), disp("code is mc"), endfunction
[sind sind]
-->[sind sind]
!--error 144
Undefined operation for the given operands.
check or define function %mc_c_mc for overloading.
-->function %mc_c_mc(a,b), disp("code is ""mc"""), endfunction
-->[sind sind]
code is ""mc""
in Scilab 6:
------------
--> [sind sind]
Undefined operation for the given operands.
check or define function %function_c_function for overloading.
--> function %mc_c_mc(a,b), disp("code is mc"), endfunction
--> [sind sind] // mc does not work. This is not just a bad error message:
Undefined operation for the given operands.
check or define function %function_c_function for overloading.
--> function %function_c_function(a,b), disp("code is ""function"""), endfunction
--> [sind sind];
code is "function"
I have not tested all operators, but at least this is also the case for the vertical concatenation [;].
ERROR LOG:
----------
See hereabove
HOW TO REPRODUCE THE BUG:
-------------------------
function %mc_c_mc(a,b), disp("code is mc"), endfunction
[sind sind]
function %function_c_function(a,b), disp("code is ""function"""), endfunction
[sind sind]
OTHER INFORMATION:
------------------
https://www.mail-archive.com/users@lists.scilab.org/msg05648.html
Edited by Vincent COUVERT