[Issue 23638] New: [betterC] Better Error Message For Runtime Usage
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Mon Jan 16 21:18:09 UTC 2023
https://issues.dlang.org/show_bug.cgi?id=23638
Issue ID: 23638
Summary: [betterC] Better Error Message For Runtime Usage
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Severity: enhancement
Priority: P1
Component: dmd
Assignee: nobody at puremagic.com
Reporter: jack at jackstouffer.com
Consider
extern (C) int main ()
{
auto s = "a".idup;
return 0;
}
This gives the following
src/druntime/import/object.d(3822): Error: `TypeInfo` cannot be used with
-betterC
This is a trivial example, but when the library is 30 kloc it's a bit harder to
track down the offending code from this message. Especially since it doesn't
even tell you which runtime function is the problem.
I think the easiest thing to do would be to just add a stack trace like the
ones in the error messages for bad template instantiations. Something like
src/druntime/import/object.d(3822): Error: `TypeInfo` cannot be used with
-betterC
Instantiated from here: main.d(3)
It would be nice to have but not necessary to say the name of the runtime
function that's attempted to be used.
src/druntime/import/object.d(3822): Error: `TypeInfo` cannot be used with
-betterC
In function dup defined on object.d(3820)
Instantiated from here: main.d(3)
--
More information about the Digitalmars-d-bugs
mailing list