Thread overview
[Issue 13783] Function overload with rvalue `inout` parameter not selected when `enum` parameter implicitly converted to its base type
Nov 29, 2014
Kenji Hara
November 29, 2014
https://issues.dlang.org/show_bug.cgi?id=13783

Kenji Hara <k.hara.pg@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull

--- Comment #1 from Kenji Hara <k.hara.pg@gmail.com> ---
https://github.com/D-Programming-Language/dmd/pull/4177 https://github.com/D-Programming-Language/phobos/pull/2773

--
December 02, 2014
https://issues.dlang.org/show_bug.cgi?id=13783

--- Comment #2 from github-bugzilla@puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/638cededda9082a6c43e8541c16930900de90fc3 Supplemental fix for issue 13783 in std.parallelism

`auto f(ref ubyte);` should not take an lvalue of `enum E : ubyte`. Fixing 13783 will disallow the accepts-invalid bug.

https://github.com/D-Programming-Language/phobos/commit/ca2171d49ce58162e7489061588a2e2d3d5b1d8c Merge pull request #2773 from 9rnsr/fix13783

Supplemental fix for issue 13783 in std.parallelism

--
December 06, 2014
https://issues.dlang.org/show_bug.cgi?id=13783

github-bugzilla@puremagic.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--
December 06, 2014
https://issues.dlang.org/show_bug.cgi?id=13783

--- Comment #3 from github-bugzilla@puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/c0891db6300eec0f6a088f4d021c81c4457a6dfa
fix Issue 13783 - Function overload with rvalue `inout` parameter not selected
when `enum` parameter implicitly converted to its base type

The root issue is a flaw in the overload resolution mechanism.
For the function `auto f(ref T);`, an lvalue of `enum E : T` should not match.

https://github.com/D-Programming-Language/dmd/commit/b27e1501a970c158f78874bb6f71355b7d6f7c5a Merge pull request #4177 from 9rnsr/fix13783

Issue 13783 - Function overload with rvalue `inout` parameter not selected when `enum` parameter implicitly converted to its base type

--
February 19, 2015
https://issues.dlang.org/show_bug.cgi?id=13783

--- Comment #4 from github-bugzilla@puremagic.com ---
Commits pushed to 2.067 at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/638cededda9082a6c43e8541c16930900de90fc3 Supplemental fix for issue 13783 in std.parallelism

https://github.com/D-Programming-Language/phobos/commit/ca2171d49ce58162e7489061588a2e2d3d5b1d8c Merge pull request #2773 from 9rnsr/fix13783

--
February 19, 2015
https://issues.dlang.org/show_bug.cgi?id=13783

--- Comment #5 from github-bugzilla@puremagic.com ---
Commits pushed to 2.067 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/c0891db6300eec0f6a088f4d021c81c4457a6dfa
fix Issue 13783 - Function overload with rvalue `inout` parameter not selected
when `enum` parameter implicitly converted to its base type

https://github.com/D-Programming-Language/dmd/commit/b27e1501a970c158f78874bb6f71355b7d6f7c5a Merge pull request #4177 from 9rnsr/fix13783

--