Re: Why is (int[int] s = int[int].init) not allowed

2020-12-23 Thread Andre Pany via Digitalmars-d-learn
On Wednesday, 23 December 2020 at 07:08:31 UTC, Daniel Kozak wrote: Dne st 23. 12. 2020 1:00 uživatel Steven Schveighoffer via Digitalmars-d-learn napsal: On 12/22/20 5:44 PM, Daniel Kozak wrote: > [...] Yeah: void sample_valid(int[int] s = null) -Steve Yes AA.init is null per doc. htt

Re: Why is (int[int] s = int[int].init) not allowed

2020-12-22 Thread Daniel Kozak via Digitalmars-d-learn
Dne st 23. 12. 2020 1:00 uživatel Steven Schveighoffer via Digitalmars-d-learn napsal: > On 12/22/20 5:44 PM, Daniel Kozak wrote: > > On Tue, Dec 22, 2020 at 10:15 PM Andre Pany via Digitalmars-d-learn > > > > wrote: > > > > Hi, > > > > I am real

Re: Why is (int[int] s = int[int].init) not allowed

2020-12-22 Thread Steven Schveighoffer via Digitalmars-d-learn
On 12/22/20 5:44 PM, Daniel Kozak wrote: On Tue, Dec 22, 2020 at 10:15 PM Andre Pany via Digitalmars-d-learn > wrote: Hi, I am really confused, why is this valid: void sample(string[string] s = string[string].init){} while this causes

Re: Why is (int[int] s = int[int].init) not allowed

2020-12-22 Thread Daniel Kozak via Digitalmars-d-learn
On Tue, Dec 22, 2020 at 10:15 PM Andre Pany via Digitalmars-d-learn < digitalmars-d-learn@puremagic.com> wrote: > Hi, > > I am really confused, why is this valid: > void sample(string[string] s = string[string].init){} > > while this causes syntax errors? > > void sample_invalid1(double[string] s

Re: Why is (int[int] s = int[int].init) not allowed

2020-12-22 Thread Andre Pany via Digitalmars-d-learn
On Tuesday, 22 December 2020 at 22:02:54 UTC, ag0aep6g wrote: On Tuesday, 22 December 2020 at 21:11:12 UTC, Andre Pany wrote: [...] Looks like an oddity in the grammar. `string` is an alias, meaning it's an identifier. And an identifier is a valid expression to the grammar. So `string[strin

Re: Why is (int[int] s = int[int].init) not allowed

2020-12-22 Thread ag0aep6g via Digitalmars-d-learn
On Tuesday, 22 December 2020 at 21:11:12 UTC, Andre Pany wrote: I am really confused, why is this valid: void sample(string[string] s = string[string].init){} while this causes syntax errors? void sample_invalid1(double[string] s = double[string].init){} void sample_invalid2(int[int] s = int[in

Why is (int[int] s = int[int].init) not allowed

2020-12-22 Thread Andre Pany via Digitalmars-d-learn
Hi, I am really confused, why is this valid: void sample(string[string] s = string[string].init){} while this causes syntax errors? void sample_invalid1(double[string] s = double[string].init){} void sample_invalid2(int[int] s = int[int].init){} Kind regards André