This is a list of project ideas for GDC - potential improvements, new features, et cetera. As well as a list of ongoing projects going on within GDC.
Fix known bugs
- There are lots of bugs in bugzilla. Everyone is welcome to look at them, reproduce them, comment on them, fix them, etc!
- Other platforms should start being tested with the CI system.
- There are a number of XBUG markers in testsuite. Some of them are for bugs in GDC that no one has looked at in a long time. There should be fewer!
- Merge the
d/dfrontendsources with upstream DMD releases (stable branch).
- Merge the
libphobos/libdruntimesources with upstream Druntime releases (stable branch).
- Merge the
libphobos/srcsources with upstream Phobos releases (stable branch).
- Create a release branch and test building GDC with each GCC release.
- Update the latest development branch of GDC to be continually in sync with latest GCC development changes.
See GDC/CurrentReleaseTasks for version specific tasks.
(These listed are mixed active/idle stuff that needs more explanation of what's going on!)
- Merging GDC into upstream GCC.
- Porting D to MinGW.
- GCC LTO support is broken horribly, any attempt to use LTO will result in ICE'ing the LTO compiler.
- Support all variants of
--enable-tlsin the GC.
- The documentation in d/README is inadequately little, and contains references to old changes that are no where else to be found. This should be improved, and old documentation archived on the wiki.
- Missing d/NEWS and d/CONTRIBUTE documentation.
- The GDC manpage d/gdc.texi could be better written.
- GDC Extended Assembler needs better documentation with multiple examples, such as that found in LDP for GCC.
- The only supported GDC-style
"target". This may need extending as seen fit.
- The macros
GCC_SAFE_DMDwhich are used to conditionally compile code in the frontend to work against GDC and its backend should be gradually removed from the D frontend, and either made into a runtime hook (ie:
port.h, etc), or GDC (or DMD) should be fixed to handle the discrepancy between compiler backends.
- To be considered as a project part of GCC, the code in GDC should ideally conform to coding standards of GCC. This should be fixed up in all areas of the code - whatever standard the D frontend or Phobos uses from upstream is not a concern.