[Issue 23956] New: [REG2.099.0] Can't decide between const and non-const overload with lambda
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Fri Jun 2 15:59:40 UTC 2023
https://issues.dlang.org/show_bug.cgi?id=23956
Issue ID: 23956
Summary: [REG2.099.0] Can't decide between const and non-const
overload with lambda
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Keywords: rejects-valid
Severity: regression
Priority: P1
Component: dmd
Assignee: nobody at puremagic.com
Reporter: dlang-bugzilla at thecybershadow.net
//////////////////////// test.d ////////////////////////
struct S
{
void fun(scope void delegate( int [])) {}
void fun(scope void delegate(const(int)[])) const {}
}
unittest
{
S s;
s.fun((arr) {});
}
////////////////////////////////////////////////////////
Compiler says:
test.d(10): Error: `test.S.fun` called with argument types `(void)` matches
both:
test.d(3): `test.S.fun(scope void delegate(int[]) _param_0)`
and:
test.d(4): `test.S.fun(scope void delegate(const(int)[]) _param_0) const`
Looks very similar to issue 23274, may be the same underlying bug.
--
More information about the Digitalmars-d-bugs
mailing list