Last modified: 2013-04-10 14:10:03 UTC
HTMLForm.php (r85166) contains in lines 76..78 a comment using #. The comment contains an apostrophe which derails doxygen. The # should be changed into //.
So you're saying that if( $wgRequest->wasPosted() ){ # Ok, so we got a POST submission asking us to reblock a user... # confirm checkbox; the user will only see it if they haven't previously $fields['Confirm']['type'] = 'check'; } is broken because of the apostrophe in "haven't"; but that if( $wgRequest->wasPosted() ){ // Ok, so we got a POST submission asking us to reblock a user... // confirm checkbox; the user will only see it if they haven't previously $fields['Confirm']['type'] = 'check'; } would be fine? What happens to doxygen in the former case?
(In reply to comment #1) > would be fine? What happens to doxygen in the former case? I could not find your code, I am talking about http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/includes/HTMLForm.php?view=markup&pathrev=85166#l76 However, yours is probably a candidate, too. The problem is, that doxygen interprets the apostrophe as a string start and consequently ignores the following code (or tries to cope with it somehow). See http://svn.wikimedia.org/doc/HTMLForm_8php_source.html.
Then why doesn't, for instance, the apostrophe at http://svn.wikimedia.org/doc/Title_8php_source.html#l00562 trigger the same behaviour? I think it's that it doesn't like the comments inside the array declaration, rather than it not liking the syntax of the comment. Thoughts?
Moving the comment out of the array declaration worked, so it seems to be the combination. The doxygen PHP parser is based on the C parser, AFAIK. Can't remember what a # signifies in C, but it's probably not a comment. This might explain, why it's unexpected in an array declaration, but works alright outside.
(In reply to comment #4) > Can't remember what a # signifies in C, but it's probably not a comment. # introduces pre-processor directives like #include and #define.
I can see // being used on line 117..119, seems the bug is fixed.