Jump to page: 1 2
Thread overview
[Issue 15857] incorrect checkimports mismatch for overload sets
[Issue 15857] Confusing/wrong error message with -transition=checkimports
Apr 01, 2016
Martin Nowak
Apr 01, 2016
Martin Nowak
Apr 02, 2016
Martin Nowak
Apr 02, 2016
Jacob Carlborg
Apr 05, 2016
Martin Nowak
Apr 17, 2016
Kenji Hara
Apr 17, 2016
Kenji Hara
May 30, 2016
Jacob Carlborg
Aug 12, 2016
Martin Nowak
Aug 12, 2016
Jacob Carlborg
Aug 12, 2016
Jacob Carlborg
Sep 14, 2016
Martin Nowak
Sep 16, 2016
Martin Nowak
April 01, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

Martin Nowak <code@dawg.eu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |code@dawg.eu

--- Comment #1 from Martin Nowak <code@dawg.eu> ---
I guess this is a problem with comparing symbols for equality. https://github.com/D-Programming-Language/dmd/blob/e90436f89cdccc39408cc3760471199cee371b3d/src/dscope.d#L556

--
April 01, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

Martin Nowak <code@dawg.eu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Confusing/wrong error       |incorrect checkimports
                   |message with                |mismatch for overload sets
                   |-transition=checkimports    |

--
April 02, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

--- Comment #2 from Martin Nowak <code@dawg.eu> ---
Unfortunately we don't have any complete symbol equality test in the compiler
(even __traits(isSame) doesn't completely work), so fixing this bug is a bit
out of scope.

--
April 02, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

--- Comment #3 from Jacob Carlborg <doob@me.com> ---
I guess since this is currently only a deprecation it isn't _that_ bad. Would it be realistic to fix the bug before it's turned in to a real error?

What is considered equality for a symbol, the fully qualified name? Can that be used instead of comparing identity?

Is there a workaround that I can use?

--
April 05, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

--- Comment #4 from Martin Nowak <code@dawg.eu> ---
(In reply to Jacob Carlborg from comment #3)
> I guess since this is currently only a deprecation it isn't _that_ bad. Would it be realistic to fix the bug before it's turned in to a real error?

We'll remove the option when the old import rules have been deprecated.
But sure we can try to add it later, in particular b/c __traits(isSame) doesn't
work either.

> What is considered equality for a symbol, the fully qualified name? Can that be used instead of comparing identity?

Comparing overload sets is a bit more complex, they are created during lookup and depend on the imported modules.

> Is there a workaround that I can use?

None that I'm aware of.

--
April 17, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

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

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

--- Comment #5 from Kenji Hara <k.hara.pg@gmail.com> ---
I found a minimal test case to be able to see the message "Deprecation: local import search method found overloadset ... instead of overloadset ..."

template Mix15857(T)
{
    void foo15857(T) {}
}
mixin Mix15857!int;
mixin Mix15857!string;

void test15857()
{
    foo15857(1);
}

(This is using template mixin instead of module import to reduce test files)

However yet I'm not sure it will actually fix the original problem.

https://github.com/dlang/dmd/pull/5681

--
April 17, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |diagnostic

--
April 17, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

--- Comment #6 from github-bugzilla@puremagic.com ---
Commits pushed to stable at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/082e1199c258e99f7867ca33509db9ae9a31f3ae Issue 15857 - incorrect checkimports mismatch for overload sets

Cache the generated `OverloadSet` object into scope, and prevent repetition of identical objects.

https://github.com/dlang/dmd/commit/82c5682edbd876767d3853bd6fdd2cc70ebfa73b Merge pull request #5681 from 9rnsr/fix15857

Issue 15857 - incorrect checkimports mismatch for overload sets

--
April 28, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

--- Comment #7 from github-bugzilla@puremagic.com ---
Commits pushed to master at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/082e1199c258e99f7867ca33509db9ae9a31f3ae Issue 15857 - incorrect checkimports mismatch for overload sets

https://github.com/dlang/dmd/commit/82c5682edbd876767d3853bd6fdd2cc70ebfa73b Merge pull request #5681 from 9rnsr/fix15857

--
May 30, 2016
https://issues.dlang.org/show_bug.cgi?id=15857

--- Comment #8 from Jacob Carlborg <doob@me.com> ---
This is not fixed in v2.071.1-b2.

--
« First   ‹ Prev
1 2