In RB, there is a very silly bug.

RB treats overloaded operators as equally valid, compared to other  
functions! ARGH!

If there is ONE non-operator function that is valid, but 1 or 200 or  
however many operator functions valid, ONLY the NON-OPERATOR function  
should be called.

But RB doesn't do this :(

What happens is that you get things like this:

   class bla
     function ABC(s as string)
     function ABC(b as bla)
     function operator_convert() as string
   end class

   dim a, b as bla
   a = new bla
   b = new bla

   b.ABC( a ) // RB won't like this line!


Why? Because .ABC here, may take a string, or a bla class.

But there is an operator_convert to a string. So it doesn't know  
which ABC should be called :(

So stupid. Because operator_convert is an implicit feature, heavily  
discouraged, and should never take precedence.

I mean, imagine doing some lines like this:

dim a, b, c as integer

a = b*a+c

And RB saying "sorry, RB doesn't understand anything about precdence,  
and can't compile this line".

:(

operator_convert should take the lowest precedence, just like  
subtraction should take the lowest precedence.

--
http://elfdata.com/plugin/
"String processing, done right"


_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives:
<http://support.realsoftware.com/listarchives/lists.html>

Reply via email to