https://issues.dlang.org/show_bug.cgi?id=22367
--- Comment #14 from Richard Cattermole ---
(In reply to Walter Bright from comment #13)
> The change to fix this bug report, then, is for betterC modules to generate
> a ModuleInfo if it has a `static this` constructor. And to add these
> instructio
https://issues.dlang.org/show_bug.cgi?id=22367
--- Comment #13 from Walter Bright ---
In this case, ModuleInfo is how the D runtime runs static constructors.
Programs compiled with betterC are meant to link only with the C runtime
library, which knows nothing about ModuleInfo.
The problem here i
https://issues.dlang.org/show_bug.cgi?id=23529
Dlang Bot changed:
What|Removed |Added
Keywords||pull
--- Comment #1 from Dlang Bot ---
@UplinkC
https://issues.dlang.org/show_bug.cgi?id=23529
uplink.co...@googlemail.com changed:
What|Removed |Added
Assignee|nob...@puremagic.com|uplink.co...@googlemail.com
--
https://issues.dlang.org/show_bug.cgi?id=23529
Issue ID: 23529
Summary: [ICE] Compiler segfaults on static array cast
Product: D
Version: D2
Hardware: x86_64
OS: Linux
Status: NEW
Severity: major
P
https://issues.dlang.org/show_bug.cgi?id=23528
Richard Cattermole changed:
What|Removed |Added
Keywords||betterC
--
https://issues.dlang.org/show_bug.cgi?id=23528
Issue ID: 23528
Summary: moduleName/fullyQualifiedName no longer works in
-betterC
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
https://issues.dlang.org/show_bug.cgi?id=14471
Adam D. Ruppe changed:
What|Removed |Added
Status|NEW |RESOLVED
Resolution|---
https://issues.dlang.org/show_bug.cgi?id=18625
Adam D. Ruppe changed:
What|Removed |Added
CC||destructiona...@gmail.com
--- Comment #2 fro
https://issues.dlang.org/show_bug.cgi?id=22745
Dlang Bot changed:
What|Removed |Added
Keywords||pull
--- Comment #1 from Dlang Bot ---
@kinke c
https://issues.dlang.org/show_bug.cgi?id=22367
--- Comment #12 from Richard Cattermole ---
D module constructors of course shouldn't work in -betterC code. They can throw
a warning as dead code and hence don't require ModuleInfo to be generated (this
should be easy to resolve). That'll prevent su
https://issues.dlang.org/show_bug.cgi?id=23523
--- Comment #1 from John Hall ---
In the past the argument from Walter against something like opImplicitCast has
always been that users would get confused about random things happening if they
had freedom to do any implicit cast they could think of.
https://issues.dlang.org/show_bug.cgi?id=23527
Issue ID: 23527
Summary: More detailed error messages from is(...) and
_traits(compiles)
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
https://issues.dlang.org/show_bug.cgi?id=23526
Issue ID: 23526
Summary: Allow libraries to display custom error messages with
same flexibility as compiler
Product: D
Version: D2
Hardware: All
OS: All
https://issues.dlang.org/show_bug.cgi?id=23525
Issue ID: 23525
Summary: Allow user-defined GC scanning for library types
Product: D
Version: D2
Hardware: x86
OS: Windows
Status: NEW
Severity: enhancement
https://issues.dlang.org/show_bug.cgi?id=23524
Issue ID: 23524
Summary: Allow user-defined value ranges for aggregate fields
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Severity: enhancement
https://issues.dlang.org/show_bug.cgi?id=23523
Issue ID: 23523
Summary: Allow User-Defined Implicit Conversions for
const/immutable containers
Product: D
Version: D2
Hardware: All
OS: All
Status: N
https://issues.dlang.org/show_bug.cgi?id=23522
Issue ID: 23522
Summary: Error message when enum type is not integral and a
value lacks an initializer
Product: D
Version: D2
Hardware: All
OS: All
St
https://issues.dlang.org/show_bug.cgi?id=23521
Issue ID: 23521
Summary: Bad conversion in double.to!long for values around
long.max
Product: D
Version: D2
Hardware: x86_64
OS: Linux
Status: NEW
https://issues.dlang.org/show_bug.cgi?id=22367
--- Comment #11 from Walter Bright ---
mylib1.d has a static constructor in it. When does construction happen?
In C code, the C runtime takes care of it, in the order they appear to the
linker.
In D code, the D startup code takes care of it, *after
https://issues.dlang.org/show_bug.cgi?id=22367
--- Comment #10 from Walter Bright ---
That doesn't quite solve the problem. Will have to think about it some more.
--
https://issues.dlang.org/show_bug.cgi?id=22367
Walter Bright changed:
What|Removed |Added
Severity|normal |blocker
--
https://issues.dlang.org/show_bug.cgi?id=22367
--- Comment #9 from Walter Bright ---
Iain has the right idea. The solution is to, when in -betterC mode:
1. automatically annotate static constructors with:
pragma(crt_constructor) extern (C)
2. do the same for static destructors
3. not set
https://issues.dlang.org/show_bug.cgi?id=22367
--- Comment #8 from Walter Bright ---
A module generates a ModuleInfo if at least one of these is true:
1. it imports a module that generates ModuleInfo
2. it has a static constructor
3. it has a static destructor
4. it has a unit test declaration
24 matches
Mail list logo