Bug 9782 – implementing RTInfo!T causes errors for deprecated types

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-03-22T02:02:00Z
Last change time
2013-06-22T01:07:36Z
Keywords
pull, rejects-valid
Assigned to
nobody
Creator
r.sagitario

Comments

Comment #0 by r.sagitario — 2013-03-22T02:02:24Z
If you modify object.di to implement RTInfo as template RTInfo(T) { enum RTInfo = T.sizeof; } and then compile deprecated class C {} you get the error/warning object.di(661): Deprecation: class test.C is deprecated even though C is never touched. Similar things happen with types that caused errors in speculative compilation, e.g. xtest46 from the test suite fails with object.di(661): Error: variable object.RTInfo!(_error_).RTInfo had semantic errors when compiling
Comment #1 by r.sagitario — 2013-03-22T02:36:04Z
Comment #2 by github-bugzilla — 2013-03-22T14:00:36Z
Commit pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/5178fe76b83593ab12a8f40c79fdf2e400bb0fd9 Merge pull request #1785 from rainers/rtinfo_on_deprecated fix issue 9782: do not generate RTInfo for deprecated types and _error_ types
Comment #3 by github-bugzilla — 2013-03-24T20:57:15Z
Comment #4 by r.sagitario — 2013-06-22T01:07:36Z
Seems this was not automatically closed afer the commit. Fixed in 2.063.