Matt Woodward wrote:
> Good to know it's a compatibility issue, but I'm still curious
> specifically what CF 8 is doing with something like<cfset foo = null /
>> .
>
> To me even though it's incompatible I don't believe that's incorrect
> behavior; the struct key *does* exist and has a value of null. That's
> different than the struct key not existing. We'll have to discuss it
> from a compatibility standpoint, however.

I agree with Matt.

The function is clearly asking, "StructKeyExists()", if the key exists 
in the structure, not the value.   So I would argue that if other 
engines are reporting false, then they are at fault here.

If the function was say "StructValueExists()" then yes, it should return 
false, but again, that could be argued, as null is technically a value.

In Java, the underlying Map permits nulls to be stored as values, and 
the keys still exist.

As for compatibility, that is an interesting one.  I am not so keen to 
be inserting known bugs into OpenBD just to be "bug-compatible" with 
others, particularly when its an edge case that the vast majority of 
developers probably will never even encounter.

--~--~---------~--~----~------------~-------~--~----~
Open BlueDragon Public Mailing List
 http://groups.google.com/group/openbd?hl=en
 official site @ http://www.openbluedragon.org/

!! save a network - trim replies before posting !!
-~----------~----~----~----~------~----~------~--~---

Reply via email to