GNOME Bugzilla – Bug 173041
Doxygen doesn't recognise D keywords 'function' and 'delegate'
Last modified: 2018-07-30 11:00:16 UTC
Version details: 1.4.2 Distribution/Version: 98SE The syntax int function(int qwert) yuiop; is equivalent to the C(++) syntax (also supported in D) int (*yuiop)(int qwert); As such, 'int function(int qwert)' is the data type and yuiop is the variable being declared. The 'delegate' keyword follows exactly the same syntax. Doxygen doesn't understand this feature of D at present, instead seeing the words 'function' and 'delegate' as function names. Steps to reproduce: 1. Save these two lines as a D file: int function(int qwert) yuiop; int delegate(int qwert) asdfg; 2. Run doxygen. Actual results: HTML output looks like this (underscores denote links): Functions int _function_ (int qwert) yuiop int _delegate_ (int qwert) asdfg ---- Function Documentation int delegate( int qwert ) int function( int qwert ) Notice that it treats 'function' and 'delegate' as the names of functions, and drops the actual variable names from the detail. Expected results: Parse the whole substrings 'int function(int qwert)' and 'int delegate(int qwert)' to be the types, and hence list the above as variables with the names 'yuiop' and 'asdfg', like this Variables int function(int qwert) _yuiop_ int delegate(int qwert) _asdfg_ ---- Variable Documentation int delegate(int qwert) asdfg int function(int qwert) yuiop
As discussed in https://github.com/doxygen/doxygen/pull/734 , Doxygen has moved its issue tracking to https://github.com/doxygen/doxygen/issues All Doxygen tickets in GNOME Bugzilla have been migrated to Github. You can subscribe and participate in the new ticket in Github. You can find the corresponding Github ticket by searching for its Bugzilla ID (number) in Github. Hence I am closing this GNOME Bugzilla ticket. Please use the corresponding ticket in Github instead. Thanks a lot!