Description:
------------
EVERY TIME something is not what is expected to be, the error message should say both what it should have been, and what it was instead.
I f***ng hate when an error message gets so close to giving me the all the needed information, but it deliberately omits one tiny but crucial bit of detaildetail, that it would have cost nothing to include.
Test script:
---------------
$a=array(1,2,3);
$b='this is a string';
array_intersect($a, $b);
Expected result:
----------------
The error message should be something like:
"Warning: array_intersect(): Argument #2 should be an array, string given instead"
Actual result:
--------------
The error message is:
"Warning: array_intersect(): Argument #2 is not an array"
WHY DON'T YOU TELL ME WHAT THE F*** IT IS?