Bug 1797 – Documentation comments - ///

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
x86
OS
Windows
Creation time
2008-01-21T20:21:00Z
Last change time
2015-06-09T05:15:09Z
Keywords
ddoc
Assigned to
bugs-d
Creator
bugs-d

Attachments

IDFilenameSummaryContent-TypeSize
219nosep.diffSimple lexer.c patchtext/plain876

Comments

Comment #0 by bugs-d — 2008-01-21T20:21:18Z
C# style documentation comments, which use lines prepended with ///, are not being parsed correctly. Two lines in a row are treated as separate blocks, and separated with the DDOC_BLANKLINE macro. It seems to me this was once supported, although ddoc.html has always listed "///" as a single line documentation comment. /// Summary /// /// Example line 1 /// Example line 2 Expected Results: Summary Example line 1 Example line 2 Actual Results: Summary Example line 1 Example line 2 If I have time (won't tonight), I'll try to figure up a patch for this issue, if I can test it with the compiler sources/latest dmdfe. -[Unknown]
Comment #1 by jarrett.billingsley — 2008-01-21T22:37:21Z
See also http://d.puremagic.com/issues/show_bug.cgi?id=1652, probably the same issue?
Comment #2 by bugs-d — 2008-01-23T03:38:45Z
Created attachment 219 Simple lexer.c patch Okay, this patch does two things. First, it fixes this issue by not adding an extra \n between two nearby block comments. This does not break that this: /** * Summary */ /** * Long Description */ Still works properly. It does not now nor did it before work for this: /** Summary */ /** Long Description */ So this patch doesn't (that I can tell) break anything worse than current, but does improve ///. Second, it fixes an issue wherein /** ... */ comments were typically not properly being separated. Meaning, before this did not even work: /** * Summary */ /** * Long Description */ Based on the code, the fact that the combine comments function was trying to make that work, and the documentation... I fixed it so this works as well (the problem is that last line, " */". -[Unknown]
Comment #3 by bugzilla — 2008-12-08T00:54:02Z
Fixed in DMD 1.037 and 2.021