dmd 2.057 release

Jacob Carlborg doob at me.com
Wed Dec 14 23:19:39 PST 2011


On 2011-12-14 18:00, Jonathan M Davis wrote:
> On Wednesday, December 14, 2011 12:11:03 Jacob Carlborg wrote:
>> On 2011-12-14 11:10, Walter Bright wrote:
>>> On 12/14/2011 1:59 AM, Jacob Carlborg wrote:
>>>> What happened to arrays in this release:
>>>>
>>>> void foo (Object[] a) {}
>>>> class Foo {}
>>>>
>>>> void main ()
>>>> {
>>>> Foo[] b;
>>>> foo(b);
>>>> }
>>>>
>>>> The above code fails with the following message:
>>>>
>>>> main.d(54): Error: function main.foo (Object[] a) is not callable
>>>> using argument
>>>> types (Foo[])
>>>> main.d(54): Error: cannot implicitly convert expression (b) of type
>>>> Foo[] to
>>>> Object[]
>>>>
>>>> Have I missed something, I can't find this in the changelog?
>>>
>>> I don't remember if there was a bugzilla entry for it, but it's the
>>> object slicing problem. The thing is, main() expects b to be an array of
>>> Foo's. If foo() replaces one of the array elements with an Object, then
>>> b is no longer an array of Foo's, and can crash.
>>
>> I think it would be good if it's in the changelog, even if there is no
>> bugzilla entry for it.
>
> It's the first dmd bug on the list:
> http://d.puremagic.com/issues/show_bug.cgi?id=2095
>
> - Jonathan M Davis

I see, thanks. I was search for "array" on the changelog page.

-- 
/Jacob Carlborg


More information about the Digitalmars-d-announce mailing list