summaryrefslogtreecommitdiffstats
path: root/src/pre.l
Commit message (Collapse)AuthorAgeFilesLines
* issue #7104 Warning with preprocessoralbert-github2019-07-051-6/+6
| | | | | | | | | | | | | | | The test on 'defined' has to be done earlier as otherwise the replacement (limited to 2 defined is enough for the test) of ``` (defined(__AVR_ATmega644RFR2__)||defined(__AVR_ATmega256RFR2__)) ``` will be ``` ` ! (defined( 0 )||0( 0 )) ' ``` instead of ``` ` ! (defined( 0 )||defined( 0 )) ' ```
* issue #7021 Warning about missing item in INCLUDE_PATHalbert-github2019-06-021-1/+5
| | | | Do the `curlyCount` per file and not globally.
* Warning when preprocessing conditionalsalbert-github2019-04-241-0/+1
| | | | | | | | | | | | | | In case in a `#if` statement a space in the use of a macro is present a warning of the type: warning: preprocessing issue while doing constant expression evaluation: syntax error is given. Removing the white space after an ID solves the issue In the following the first expressing gives a warning whilst the second expression doesn't: #if (!__GNUC_PREREQ (4, 6)) int i0; #endif #if (!__GNUC_PREREQ(4, 6)) int k0; #endif
* Revert "issue #6856 Doxygen only expands macro defined in header file once ↵Dimitri van Heesch2019-03-281-2/+5
| | | | when referred multiple times"
* Merge pull request #6859 from albert-github/feature/issue_6856Dimitri van Heesch2019-03-201-5/+2
|\ | | | | issue #6856 Doxygen only expands macro defined in header file once when referred multiple times
| * issue #6856 Doxygen only expands macro defined in header file once when ↵albert-github2019-02-251-5/+2
| | | | | | | | | | | | referred multiple times In case the include file is already is already in the global stack it should not be added to the global stack, but still be handled for the current file
* | Removed unneeded checkDimitri van Heesch2019-03-171-1/+1
| |
* | at sign (`@`) not handled correctly in preprocessor (more fixes)Dimitri van Heesch2019-03-171-34/+40
| |
* | Merge branch 'master' of github.com:doxygen/doxygenDimitri van Heesch2019-03-161-1/+15
|\ \
| * \ Merge pull request #6772 from albert-github/feature/issue_6764Dimitri van Heesch2019-03-101-1/+15
| |\ \ | | | | | | | | issue #6764 Incorrect parsing of C enum comments defined using a macro
| | * | issue #6764 Incorrect parsing of C enum comments defined using a macroalbert-github2019-01-151-1/+15
| | |/ | | | | | | | | | When in a `/*` comment skip till end of the comment so a `,` won't be seen as the argument separator.
* | | at sign (`@`) not handled correctly in preprocessorDimitri van Heesch2019-03-161-0/+15
|/ /
* | Refactored Definition and derived classes such that they are abstract interfacesDimitri van Heesch2019-02-281-1/+1
|/
* Added *.ice files as a recognized file type.Mark Spruiell2018-10-221-1/+1
| | | | Added a Slice-optimized output mode.
* Merge pull request #778 from albert-github/feature/565713Dimitri van Heesch2018-07-241-0/+1
|\ | | | | Bug 565713 - Fortran: Does not recognize backslash at end of documentation line
| * Bug 565713 - Fortran: Does not recognize backslash at end of documentation linealbert-github2018-06-271-0/+1
| | | | | | | | Don't remove the end backslash in case of Fortran
* | Merge pull request #770 from albert-github/feature/bug_630931Dimitri van Heesch2018-07-231-1/+10
|\ \ | | | | | | Bug 630931 - \cond after @string literal containing backslash fails in C#
| * | Bug 630931 - \cond after @string literal containing backslash fails in C#albert-github2018-06-181-1/+10
| |/ | | | | | | Special handling in preprocessor for CSharp literal strings (i.e. strings starting with @).
* | Bug 796621 - @cond does not stop at @endcond Fortranalbert-github2018-06-191-3/+21
|/ | | | | 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
* Merge pull request #589 from albert-github/feature/bug_786409Dimitri van Heesch2017-09-021-0/+11
|\ | | | | Bug 786409 - parsing error in Fortran file with preprocessing
| * Bug 786409 - parsing error in Fortran file with preprocessingalbert-github2017-08-171-0/+11
| | | | | | | | Problem with ' (single quote) in Fortran. A string in Fortran can be between single or double quotes.
* | Bug 786409 - parsing error in Fortran file with preprocessingalbert-github2017-08-181-1/+1
|/ | | | the // is in Fortran the indication for string concatenation and not for comment and should thus be ignored during, Fortran, preprocessing
* Merge pull request #560 from luzpaz/typosDimitri van Heesch2017-04-021-1/+1
|\ | | | | typos
| * typosKunda2017-03-051-1/+1
| | | | | | | | | | | | some doxy typos and some misc. source typos typos some doxy typos and some misc. source typos
* | line continuation characters inside comments embedded in a macro definition ↵Dimitri van Heesch2017-04-021-3/+10
|/ | | | appeared in the output
* flex: use %option instead of command line options.Adrian Negreanu2016-09-211-0/+2
|
* FORTRAN determination string in preprocessingalbert-github2016-08-281-0/+16
| | | | In FORTRAN a string can start (and end) either with a double quote or a single quote. The later was not considered in the preprocessing resulting in unwanted substitutions in strings.
* Changed configuration mechanism to directly access options in order to ↵Dimitri van Heesch2016-01-171-9/+9
| | | | improve performance
* Fixed a couple of small memory leaksDimitri van Heesch2015-11-141-2/+4
|
* drop #include <unistd.h>Adrian Negreanu2015-05-151-3/+3
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* Guarded debug prints against printing a NULL pointer.Dimitri van Heesch2015-04-061-3/+3
|
* Added documentation for ``` style fenced code block and more robust parsingDimitri van Heesch2015-04-051-5/+5
|
* fix *.l for three backtickshalex20052015-03-301-2/+2
|
* add support for github flavored fenced code blockshalex20052015-03-301-0/+20
|
* Bump copyright yearDimitri van Heesch2015-02-261-1/+1
|
* Fixed several Coverity warningsDimitri van Heesch2014-11-151-2/+2
|
* Avoid a (theoretical) memory leakDimitri van Heesch2014-10-231-3/+3
|
* Fixed a number of issues (resource leaks, uninitialized members, etc) found ↵Dimitri van Heesch2014-08-311-0/+3
| | | | by coverity
* Bug 735037 - QGDict::hashAsciiKey: Invalid null keyDimitri van Heesch2014-08-211-2/+9
|
* Bug 731985 - Variadic macros failing to expand if trailing ... is emptyDimitri van Heesch2014-06-241-2/+3
|
* Updated copyrightDimitri van Heesch2014-02-111-1/+1
|
* Debug output for lexical analyzerAlbert2013-11-131-0/+2
| | | | | | | | | | | | | | In case of error messages like: input buffer overflow, can't enlarge buffer because scanner uses REJECT it is not always directly clear from which lexical analyzer (.l file) this problem comes. This patch helps to find these problems and does the following things: - when using the option -d lex with doxygen each time a lexical analyzer is called at the start a line like the following line will be given: Entering lexical analyzer: pre.l (for: ..../file.c) and at the end: Finished lexical analyzer: pre.l (for: ..../file.c) - in case the lexical analyzer has been translated with the -d option of lex / flex the above mentioned lines will be given as part of the lexical analyzer output (to stderr) and look like: --entering lexical analyzer: pre.l (for: ..../file.c) --finished lexical analyzer: pre.l (for: ..../file.c)
* Bug 711639 - [PATCH] #include does not work with absolute pathsDimitri van Heesch2013-11-111-0/+14
|
* This patch contains changes regarding the build system so that the *nix and ↵albert-github2013-10-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Windows systems use the same information (consistency). Some use names routine names have been changed (from .l files with -P option) to reflect the file name that generated the routines, this makes it easier to create a general procedure. A number of include / header files are files are generated from different file types (html, xml, js), due some limitations of the windows build system the generated file names had to be changed (the extension in the windows build system is only available including the '.' so e.g. the file jquery_fx.js generates now jquery_fx.js.h instead of jquery_fx_js.h) In the windows version the creation of .cpp files from .l files has been adjusted to correct for the YY_BUF_SIZE problems. Furthermore on windows (and also used on *nix) some commends have been replaced with python scripts so that on windows only python is need (besides flex and and bison). On *nix also perl is required for the generation using tmake. Below a short description of the changes will be given and grouped. Changed files ============= - .gitignore added some directories and file - Doxyfile corrected for changed file names - Makefile.in added realclean and some other changes (ignore error) and the moment when the Makefile is deleted (as last file). Added entries for doxyapp and doxmlparser Added realclean for the following files (consistency): ====================================================== - Makefile.win_make.in - Makefile.win_nmake.in - addon/doxmlparser/examples/metrics/Makefile.in - addon/doxmlparser/src/Makefile.in - addon/doxmlparser/test/Makefile.in - addon/doxyapp/Makefile.in - addon/doxysearch/Makefile.in - libmd5/Makefile.in - qtools/Makefile.in - addon/doxyapp/doxyapp.pro.in removed double occurence of -L../../lib - addon/doxysearch/doxysearch.pro.in no visible change just spacing? - addon/doxywizard/Makefile.in added realclean corrected call to qmake (to get it from the right place, it is not necessarily in the path) made some macros known in the called process - addon/doxywizard/configdoc.cpp automatically generated, can be removed - addon/doxywizard/doxywizard.pro.in corrected dependencies corrected call to python (to get it from the right place, it is not necessarily in the path) new items to generate version.cpp and config_doxyw.cpp - configure added configuration definition possibility for python added possibility to build doxmlparser automatically generate the lang_cfg.h file based on the available languages (translator_??.h) and not on a fixed list. This step still has to be added to the windows build process. - doc/Makefile.in corrected call to python (to get it from the right place, it is not necessarily in the path) - doc/config.doc small correction - doc/install.doc added python as a requirement changed CVS to GitHub - doc/language.doc automatically generated file, based on other changes. - doc/language.tpl made XX and xx more consistent changed description of the procedure based on changes already made configure. - src/Makefile.in adjusted used file names in distclean Solved PERL usage consistent with LEX / YACC (with %%PERL%%) automatically add translator_??>h to HEADERS same spacing Adjusted in the following file the names of some include files: =============================================================== - src/cite.cpp - src/docbookgen.cpp - src/ftvhelp.cpp - src/htmlgen.cpp - src/layout.cpp - src/searchindex.cpp - src/xmlgen.cpp Adjusted in the following files some routine names (..YY..) to be consistent with the file names: ================================================================================================= - src/commentscan.l - src/constexp.h - src/constexp.l - src/constexp.y - src/fortrancode.l - src/fortranscanner.l - src/pyscanner.l - src/pre.l - src/scanner.l - src/tclscanner.l - src/vhdlparser.y - src/vhdlscanner.l - src/config.xml small textual correction - src/configoptions.cpp generated output file, can be removed - src/lang_cfg.h Automatically generated file with selected languages (*nix). On windows a procedure has to be defined. - src/libdoxycfg.t.in corrected call to python (to get it from the right place, it is not necessarily in the path) - src/libdoxygen.pro.in adjusted include file names removed translator_??.h files, they are added automatically changed file name ce_lex.cpp -> constexp.cpp (generated file) - src/libdoxygen.t.in made LEX calls used the file name for the -P option changed INCREASEBUF script to a python script changed teh geneartion of some include file, now by means of a pythons script. Names of the generated include file had to be changed as well. added possibility to generate version.cpp here as well. Added HEADERS to dependency so non existing but later generated include files are recognized as well: ===================================================================================================== - tmake/lib/unix/generic.t - tmake/lib/win32-borland/generic.t - tmake/lib/win32-g++/generic.t - tmake/lib/win32-mingw/generic.t - tmake/lib/win32-msvc/generic.t - tmake/lib/win32-symantec/generic.t - tmake/lib/win32-visage/generic.t - tmake/lib/win32-watcom/generic.t - winbuild/Doxygen.vcproj made consistent wit *nix version. Generating all possible files removed unused /empty parts setting for the Lex.rules and other rules files some default values - winbuild/Doxywizard.vcproj made consistent wit *nix version. Generating all possible files removed unused /empty parts removed system dependent paths (C:\... etc) replaced then with external environment variables - winbuild/Lex.rules adjusted file to comply with new requirements, only user variable is -d. -i is set to read only (value can be changed in doxygen.vcproj). Handling of other arguments is all default. generation including increasebuffer possibility - winbuild/doxyindexer.vcproj corrected path - winbuild/doxysearch.vcproj removed system dependent paths (C:\... etc) replaced then with external environment variables - winbuild/qtools.vcproj corrected type, wrong used directory The following files are automatically generated (with slightly other names like index.xsd.h etc.): ================================================================================================== - src/index_xsd.h - src/doxygen_bst.h - src/dynsections_js.h - src/extsearch_js.h - src/footer_html.h - src/header_html.h - src/jquery_fx_js.h - src/jquery_p1_js.h - src/jquery_p2_js.h - src/jquery_p3_js.h - src/jquery_pt_js.h - src/jquery_ui_js.h - src/navtree_css.h - src/navtree_js.h - src/resize_js.h - src/search_css.h - src/search_functions_php.h - src/search_js.h - src/search_opensearch_php.h - src/svgpan_js.h the following files are generated with different names: - src/bib2xhtml.h becomes - src/bib2xhtml.pl/h - src/layout_default.h becomes - src/layout_default.xml.h The file: ========= - addon/doxywizard/config.l is replaced by: - addon/doxywizard/config_doxyw.l so there are in the system not 2 different config.l files. Renamed some routines from configYY -> config_doxywYY... New files: ========== - src/increasebuffer.py increase YY_BUF_SIZE and YY_READ_BUF_SIZE from 16k / 8k to 256k. - src/settings.py create settings.h file - src/to_c_cmd.py create include files from different files (html, xml, js) so they can be included in the code as defaults - src/version.py create version.cpp file based on the configure file - winbuild/Config.rules rules file to convert the config.xml file into configoptions.cpp (doxygen) or configdoc.cpp (doxywizard). Seen the differences 2 rules are created within this file. - winbuild/Gen_head.rules rules files to generate include files from different files using to_c_cmd.py - winbuild/Settings.rules rules file for generating the settings.h file. It is possible to select to use CLANG and SqlLite3 - winbuild/Version.rules rules file to be able to start version.py The files: ========== - version.bat - runbison.bat - increasebuffer.pl are not used anymore. I've only added the files as indicated, I didn't remove the files from the repository.
* Bug 706916 - C++ exception specifications are no longer parsed correctlyDimitri van Heesch2013-08-271-2/+2
|
* Fixed regression caused by the patch for bug 705219Dimitri van Heesch2013-08-031-12/+12
|
* Bug 705219 - Accept IDs using unicode for C/C++ preprocessorDimitri van Heesch2013-08-011-12/+12
|
* Bug 694147 - #undef is ignored by doxygenDimitri van Heesch2013-06-041-0/+1
|
* Bug 700908 - code after \@cond is removedDimitri van Heesch2013-05-251-4/+31
|