summaryrefslogtreecommitdiffstats
path: root/src/commentcnv.l
Commit message (Collapse)AuthorAgeFilesLines
* Incorrect handling normal C comment in comment converteralbert-github2021-05-181-16/+20
| | | | | | | | | In normal C-comment (i.e. `/*` without extra `*` of `!` etc.) doxygen commands should be ignored. This was notr te case see e.g.: ``` const char * /* O - or @code NULL@ */ zipcXMLGetAttribute(); ```
* Merge branch 'master' into feature/bug_formula_mjDimitri van Heesch2021-04-281-17/+17
|\
| * Refactoring: remove implicit conversion from QCString to const char *Dimitri van Heesch2021-04-221-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit changes the following in relation to string use - The implicit convert from 'QCString' to 'const char *' is removed - Strings parameters use 'const QCString &' as much as possible in favor over 'const char *' - 'if (s)' where s is a QCString has been replaced by 'if(!s.isEmpty())' - data() now always returns a valid C-string and not a 0-pointer. - when passing a string 's' to printf and related functions 'qPrint(s)' is used instead of 's.data()' - for empty string arguments 'QCString()' is used instead of '0' - The copy() operation has been removed - Where possible 'qstrcmp(a,b)==0' has been replaces by 'a==b' and 'qstrcmp(a,b)<0' has been replaced by 'a<b' - Parameters of string type that were default initialized with '= 0' are no initialized with '= QCString()'
* | Problems with some commands in MathJaxalbert-github2021-04-201-2/+6
|/ | | | | Especially with commands like `\f$\mbox{\LaTeX}\f$`MathJax has some problem as it is not, yet, able to use the commands `\raise` and `lower` inside the `\mbox` as used in this LaTeX command. Also switching in and out of math-mode doesn't work as the resulting code either doesn't work in MathJax or in LaTeX, hence the new command s `\f(` and `\f)`.
* Refactoring: replace QMIN/QMAX by std::min/std::maxDimitri van Heesch2021-03-261-1/+2
|
* Refactoring: some cleanup and removed text direction logicDimitri van Heesch2021-03-041-2/+0
|
* Refactoring: replace QTextStream by ifstreamDimitri van Heesch2021-03-031-1/+0
|
* Merge branch 'master' into feature/bug_lexDimitri van Heesch2021-03-031-1/+0
|\
| * Refactoring: replace QRegExp by std::regex in docparser.cppDimitri van Heesch2021-02-201-1/+0
| |
* | Adding support for lex filesalbert-github2021-02-181-31/+54
|/ | | | | - Correct handling of C comment start and end tokens as well as Cpp comment start in rules. These tokes can give "Reached end of file while still inside a (nested) comment..." - Correct other warnings in respect to lex files
* Refactoring: modernize condStackDimitri van Heesch2021-01-221-12/+13
|
* Refactoring: modernize commentStackDimitri van Heesch2021-01-221-25/+30
|
* Merge pull request #8287 from albert-github/feature/issue_8286Dimitri van Heesch2020-12-311-2/+2
|\ | | | | issue #8286 Incorrect processing of VHDL strings
| * issue #8286 Incorrect processing of VHDL stringsalbert-github2020-12-291-2/+2
| | | | | | | | See a `\` in comment in VHDL also as a normal character in a string.
* | issue #8286 Incorrect processing of VHDL stringsalbert-github2020-12-291-0/+10
|/ | | | Just copying normal vhdl comment, don't interpret it.
* Fortran comments with C comments inside (#8000)albert-github2020-09-181-1/+1
| | | | | | | | | | | | | When having a (stripped down) example like: ``` ! !!/*T !T*/ ``` we get a warning like: ``` .../ex11f.F90:4: warning: Reached end of file while still inside a (nested) comment. Nesting level 1 (probable line reference: 2, 2) ``` even though Fortran has no nested comments, and certainly doesn't have `/*` as comment signs. So message can be ignored.
* Incorrect duplicate code for Fortran fixed/free recognitionalbert-github2020-09-151-40/+2
| | | | There were 2 routines to recognize whether Fortran code was Fixed of Free format code, though the version in `commentcnv.l` didn't take the settings of `EXTENSION_MAPPING` into account which might lead to incorrect recognition of the format, this has been corrected.
* Marked the section with definitions regarding numbers more clearlyDimitri van Heesch2020-08-241-1/+3
|
* bug_786382 Unmatched single quote in C++ source breaks aliasesalbert-github2020-08-241-2/+32
| | | | | | | Based on the definition in the (informative) Annex A of the C++ draft 2020 standard (N4849, part [gram.lex]), the definitions have been made for the lexer. Now integer and floating point constants wit a single quote are seen as numbers and not as part of character constants. (also tested on CGAL)
* No default rule present in commentcnv.lalbert-github2020-06-261-0/+3
| | | | | In the file `commentcnv.l` there is no default rule present, resulting in the, non understandable, output as indicated in https://github.com/doxygen/doxygen/issues/7873#issuecomment-650100405 (this is not the cause of the problem as reported with issue https://github.com/doxygen/doxygen/issues/7873, but quite annyoing)
* Refactoring: size_t type conversions and QList in DotManagerDimitri van Heesch2020-05-021-1/+1
|
* Inconsistent behavior between `///` and `//!` for formulas (#7726)albert-github2020-04-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we have code like: ``` //! //! \f$a \times //! c \f$ //! ``` this will throw a warning like: ``` warning: End of comment block while inside formula. ``` due to the fact that after the comment conversion the code is like: ``` /** * \f$a \times //! c \f$ * */ ``` Comparing to the `///` comments: ``` /// /// \f$a \times /// c \f$ /// ``` we get ``` /** * \f$a \times c \f$ * */ ``` This discrepancy has been removed.
* Remove support for TCL (code is too buggy and unmaintained, language not ↵Dimitri van Heesch2020-03-151-3/+1
| | | | very popular)
* Enabled stricter compiler warnings and fixed all new warningsDimitri van Heesch2020-03-081-5/+11
|
* Fix wrongly detecting ``` as code block inside running text.Dimitri van Heesch2020-02-121-3/+6
|
* issue #7570 Comments replaced by block comments inside Markdown code blockDimitri van Heesch2020-02-091-1/+19
|
* issue #7570 Comments replaced by block comments inside Markdown code blockDimitri van Heesch2020-02-081-4/+8
|
* Fixed merge issueDimitri van Heesch2019-12-221-1/+1
|
* Merge branch 'master' into feature/bug_550158Dimitri van Heesch2019-12-221-500/+525
|\
| * Avoid warning in commentcnv.l about trailing context made variable due to ↵Dimitri van Heesch2019-12-171-48/+34
| | | | | | | | preceding '|' action
| * issue #7206: Problems with Fortran and `@cond`Dimitri van Heesch2019-12-141-7/+15
| |
| * Email address seen as code starteralbert-github2019-12-061-1/+7
| | | | | | | | | | | | | | | | Some email addresses give problems in the comment converter as they contain e.g. `@code`, so we try to detect Email addresses (analogous to doctokenizer.l) to prevent these false positives. The given warning would ne like: ``` aa.h:13: warning: Reached end of file while still inside a (nested) comment. Nesting level 1 (probable line reference: 1) ```
| * Added missing debug flags for scanner that were made reentrantDimitri van Heesch2019-12-051-0/+3
| |
| * Remove bogus flex codeDimitri van Heesch2019-11-181-5/+0
| |
| * Made commentcnv.l reentrantDimitri van Heesch2019-11-171-466/+493
| |
| * Spelling corrections for src directoryalbert-github2019-11-051-1/+1
| | | | | | | | | | | | | | | | Spelling corrections as found by codespell and in #561. Some reported problems were already fixed, others are fixed here, with some exceptions (a,o.): - "referenceby" in defgen.cpp as this is in the output and I cannot oversee the consequences (looks like none, but ...) - "HANGEUL_CHARSET" left as is as in some MS documentation is written: 'HANGUL_CHARSET: Also spelled "Hangeul". Specifies the Hangul Korean character set.' (https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-wmf/0d0b32ac-a836-4bd2-a112-b6000a1b4fc9).
* | Bug 550158 - EXTRACT_ALL=YES parses non doxygen commentsalbert-github2019-10-071-2/+2
| | | | | | | | Forgot to add the `/` to the not "normal" characters in the ReadLine
* | Bug 550158 - EXTRACT_ALL=YES parses non doxygen commentsalbert-github2019-10-071-0/+3
|/ | | | | Part of the problem has already been solved by means of "Bug 616379 - doxygen result by nested comment incorrectly" (pull request #6649. The missing part (start of comment) has been added here.
* Consistent way to show scanner statealbert-github2019-09-051-0/+3
| | | | | Create a consistent way to display the state mnemonics of the different scanners (analogous to the fortranscanner.l) Use an automatic procedure to generate the routine with the translation of the states to a string.
* Strange '*/' in Fortran nad Markdown with conditional sectionsalbert-github2019-08-171-1/+3
| | | | | | | | | | | | | | | | In case of a construct like (Markdown, analogous for Fortran): ``` test text @cond: after cond whatever @endcond some more text ``` we get a `*/` after `test text` that should not be present. Other places exclude besides Pyton and VHDL also Fortran and Markdown and that should happen here as well.
* Regression: python file with comment caused "Reached end of file while still ↵Dimitri van Heesch2019-08-061-0/+1
| | | | inside a comment" warning.
* Missing warning for "double comment"albert-github2019-07-141-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In case we have: ``` /** \file /** the second comment start line */ /** the docu */ void a_fie(void){} /** the docu ** double commented */ void a_fie2(void){} `` one would expect to get a warning regarding the ``` /** /** ``` but none is given. One would have expected: ``` aa.c:13: warning: Reached end of file while still inside a (nested) comment. Nesting level 1 (probable line reference: 1) ```
* Incorrect Reached end of file while still inside a (nested) comment for TCL ↵albert-github2019-05-031-1/+9
| | | | | | | | | | | | | | | | | / Python In case we have in the comment (or in the code) of a TCL file of Python file a construct like: ``` proc get_suite {dir {sort 1}} { set files [glob -nocomplain $dir/*.bin] set files [glob -nocomplain $dir/*.ps] } ``` we get the warning: ``` warning: Reached end of file while still inside a (nested) comment. Nesting level 2 (probable line reference: 3, 2) ``` although the '/*' construct has no special comment meaning in TCL / Python (comment signs '#' / '#' or '"""). So if a c-comment construct is found it is ignored for TCL and Python.
* Bug 616379 - doxygen result by nested comment incorrectlyalbert-github2018-11-281-4/+13
| | | | Improvement on handling `///` comments in relation to `*/` during comment conversion.
* Bug 796621 - @cond does not stop at @endcond Fortranalbert-github2018-06-191-2/+18
| | | | | The backslash (\) is in Fortran not an escape character but was handled as such, this has been corrected. Handling of the different Fortran string types ('...' and "...") made more consistent.
* Problem with \cond in normal comment of test 015albert-github2018-05-071-1/+1
| | | | | | | | In the \cond is also recognized in non-doxygen comment. - As a work around the \ has been removed - in case of e.g. pdf the enabled function is not shown as it does not have a doxygen comment - test file output update due to change in input code. - pre.l and commentcnv.l. better error message i.e. showing better the used condition
* Misc. typosluz.paz2018-04-251-2/+2
| | | | Found via `codespell`
* Debug output commentcnv independent of QUIET settingalbert-github2018-02-261-1/+3
| | | | The debug output of the commentcnv (-d commentcnv) should be independent of the setting of QUIET in the doxygen configuration file.
* Misc. typosluzpaz2017-12-231-1/+1
| | | | | Super trivial typos Some are in qtools/ which I know is a 3rd party dependency but as we know is now obsolete upstream. I reckon it wouldn't be much of an issue to merge neverthless Tacked on several more commits
* Bug 652086 - does ALIAS work for VHDL code?albert-github2017-06-041-13/+57
| | | | | Terminating of the VHDL comment was not found as a result of the test against python. Added handling of end of python '#' comment and VHDL '--!' comment