www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 19472] New: Allow transitive module attributes (UDAs)

https://issues.dlang.org/show_bug.cgi?id=19472

          Issue ID: 19472
           Summary: Allow transitive module attributes (UDAs)
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: radu.racariu gmail.com

When developing  safe  nogc nothrow code, the mantra needs repeated on each
module and each aggregate in the module. This is verbose and has little value
for the reader, more noise in the code.

Currently adding module level attributes is not allowed:
---
 nogc module foo;
---
Error:  nogc attribute for module declaration is not supported

Would be nice to able to annotate whole modules (including aggregates inside
the module) with a set of attributes - this will reduce the clutter and
actually be useful as a documentation for readers.

--
Dec 10 2018