dmd 2.057 release

Jonathan M Davis jmdavisProg at gmx.com
Wed Dec 14 09:00:55 PST 2011


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


More information about the Digitalmars-d-announce mailing list