www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Patches for DMD2 interface generation: cleanup, bugfixes and prettyprinting

reply Norbert Nemec <Norbert Nemec-online.de> writes:
Hi there,

I just spent most of this weekend digging into the DMD compiler code and 
came up with a set of patches that might be of interest:

     http://d.puremagic.com/issues/show_bug.cgi?id=4713

All started out with the attempt to create .di interface files for 
phobos2. The resulting .di files were too ugly to read and even DMD 
itself refused to eat them.

Trying to fix the problem, I started digging deeper and deeper. Finally, 
the bugs were fixed, the resulting .di files are now correctly indented 
and readable and the compiler code itself has even become a bit cleaner 
and more compact.

It would be good if these patches would find their way into DMD soon. 
The bulk of the changes are trivial but quite nonlocal, so merging will 
quickly become difficult...

Greetings,
Norbert
Aug 22 2010
next sibling parent Walter Bright <newshound2 digitalmars.com> writes:
Norbert Nemec wrote:
 I just spent most of this weekend digging into the DMD compiler code and 
 came up with a set of patches that might be of interest:

Thanks, Norbert!
Aug 22 2010
prev sibling parent reply Sean Kelly <sean invisibleduck.org> writes:
Norbert Nemec <Norbert Nemec-online.de> wrote:
 Hi there,
 
 I just spent most of this weekend digging into the DMD compiler code
 and came up with a set of patches that might be of interest:
 
     http://d.puremagic.com/issues/show_bug.cgi?id=4713
 
 All started out with the attempt to create .di interface files for
 phobos2. The resulting .di files were too ugly to read and even DMD
 itself refused to eat them.
 
 Trying to fix the problem, I started digging deeper and deeper.
 Finally, the bugs were fixed, the resulting .di files are now
 correctly indented and readable and the compiler code itself has even
 become a bit cleaner and more compact.
 
 It would be good if these patches would find their way into DMD soon.
 The bulk of the changes are trivial but quite nonlocal, so merging
 will quickly become difficult...

Properly indented .di files? Best patch ever.
Aug 29 2010
parent Norbert Nemec <Norbert Nemec-online.de> writes:
On 29/08/10 19:19, Sean Kelly wrote:
 Norbert Nemec<Norbert Nemec-online.de>  wrote:
 Hi there,

 I just spent most of this weekend digging into the DMD compiler code
 and came up with a set of patches that might be of interest:

      http://d.puremagic.com/issues/show_bug.cgi?id=4713

 All started out with the attempt to create .di interface files for
 phobos2. The resulting .di files were too ugly to read and even DMD
 itself refused to eat them.

 Trying to fix the problem, I started digging deeper and deeper.
 Finally, the bugs were fixed, the resulting .di files are now
 correctly indented and readable and the compiler code itself has even
 become a bit cleaner and more compact.

 It would be good if these patches would find their way into DMD soon.
 The bulk of the changes are trivial but quite nonlocal, so merging
 will quickly become difficult...

Properly indented .di files? Best patch ever.

Don't expect anything fancy at this point: just indent by two spaces on "{" and outdent on "}". Nothing configurable. I just chose a convention that works reasonably well for most code...
Aug 30 2010