July 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

--- Comment #11 from Kenji Hara <k.hara.pg@gmail.com> ---
(In reply to Walter Bright from comment #9)
> (In reply to Jacob Carlborg from comment #8)
> > If I understand you correctly the current ModuleInfo would be renamed to _ModuleInfo and a new immutable alias would be added, named ModuleInfo?
> 
> Yes.
> 
> > The ModuleInfo I have declared would be immutable?
> 
> Yes.
> 
> > That could work. I will
> > work for the function where I found the problem but it returns the module
> > info and I have not looked yet how the returned value is used.

I don't think it's good idea. It would introduce confusing than benefits.

--
July 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

--- Comment #12 from Walter Bright <bugzilla@digitalmars.com> ---
(In reply to Kenji Hara from comment #11)
> I don't think it's good idea. It would introduce confusing than benefits.

Please explain. What confusion?

--
July 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

--- Comment #13 from Kenji Hara <k.hara.pg@gmail.com> ---
(In reply to Walter Bright from comment #12)
> (In reply to Kenji Hara from comment #11)
> > I don't think it's good idea. It would introduce confusing than benefits.
> 
> Please explain. What confusion?

All D programmers would assume that unqualified type name T is a mutable type,
and const(T) is const, immutable(T) is immutable.

But, the proposed idea will break the assumption - all ModuleInfo,
const(ModuleInfo), immutable(ModuleInfo) will be same immutable. it's very
confusing situation.

--
July 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

--- Comment #14 from Jacob Carlborg <doob@me.com> ---
(In reply to Kenji Hara from comment #13)

> All D programmers would assume that unqualified type name T is a mutable
> type, and const(T) is const, immutable(T) is immutable.
> 
> But, the proposed idea will break the assumption - all ModuleInfo,
> const(ModuleInfo), immutable(ModuleInfo) will be same immutable. it's very
> confusing situation.

Hmm, that's a good point.

--
July 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

--- Comment #15 from Walter Bright <bugzilla@digitalmars.com> ---
(In reply to Kenji Hara from comment #13)
> All D programmers would assume that unqualified type name T is a mutable type,

There were some bumps in transitioning to the immutable alias 'string', but it all turned out for the best. The compiler complains if you do anything wrong, and this proposal fixes the breaking code issue.

--
July 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

--- Comment #16 from Jacob Carlborg <doob@me.com> ---
Find another project with the same error.

--
July 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

--- Comment #17 from Walter Bright <bugzilla@digitalmars.com> ---
(In reply to Jacob Carlborg from comment #16)
> Find another project with the same error.

??

--
July 13, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

--- Comment #18 from Jacob Carlborg <doob@me.com> ---
(In reply to Walter Bright from comment #17)
> (In reply to Jacob Carlborg from comment #16)
> > Find another project with the same error.
> 
> ??

I'm just indicating that there are more than one project that is affected by this.

--
July 14, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

David Nadlinger <code@klickverbot.at> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |code@klickverbot.at

--- Comment #19 from David Nadlinger <code@klickverbot.at> ---
(In reply to Jacob Carlborg from comment #18)
> I'm just indicating that there are more than one project that is affected by this.

Affected by what? If you know one, why not name it?

--
July 14, 2014
https://issues.dlang.org/show_bug.cgi?id=13084

--- Comment #20 from Jacob Carlborg <doob@me.com> ---
(In reply to David Nadlinger from comment #19)
> Affected by what? If you know one, why not name it?

Affected by the issue I reported here. Or rather the change that causes this issue. The projects I've found this in so far is DWT and Tango.

--