August 03, 2008 is this a bug? (aa initializer) | ||||
---|---|---|---|---|
| ||||
With dmd 2.017: import std.stdio; void main() { string[string] foobar = [ "foo" : "bar" ]; foreach (key, value; foobar) writefln(key, value); // prints foobar assert(foobar["foo"] == "bar"); // arraybounds error } Could somebody verify this as a bug or not? I'm not sure because I just started with D2 a bit. |
August 03, 2008 Re: is this a bug? (aa initializer) | ||||
---|---|---|---|---|
| ||||
Posted in reply to Lutger | On Sun, 03 Aug 2008 16:40:08 +0400, Lutger <lutger.blijdestijn@gmail.com> wrote:
> With dmd 2.017:
>
> import std.stdio;
>
> void main()
> {
> string[string] foobar = [ "foo" : "bar" ];
> foreach (key, value; foobar)
> writefln(key, value); // prints foobar
> assert(foobar["foo"] == "bar"); // arraybounds error
> }
>
> Could somebody verify this as a bug or not? I'm not sure because I just
> started with D2 a bit.
>
>
It is, I think.
The following:
import std.stdio;
void main()
{
string[string] aa = [ "foo" : "bar"];
aa["foo"] = "baz";
foreach (key, value; aa)
writefln(key, " - ", value); // prints foobar
}
Outputs:
foo - bar
foo - baz
D1 output:
foo - baz
Could you put it into bugzilla, please?
|
Copyright © 1999-2021 by the D Language Foundation