summaryrefslogtreecommitdiffstats
path: root/src/constexp.l
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #8504 from albert-github/feature/bug_bin_expressionsDimitri van Heesch2021-04-271-0/+3
|\ | | | | Warning from preprocessor regarding binary literals
| * Warning from preprocessor regarding binary literalsalbert-github2021-04-191-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When having a line like: ``` #if (JITTERLISP_FIXNUM_TAG_BIN == 0) ``` with ``` #define JITTERLISP_FIXNUM_TAG_BIN 0b0000 ``` we get the warning: ``` warning: preprocessing issue while doing constant expression evaluation: syntax error: input=' ( 0b0000 == 0)' ``` The equivalent hexadecimal / octal / decimal versions are OK, the handling for the binary was missing. (Found by Fossies in the poke package).
* | Refactoring: remove implicit conversion from QCString to const char *Dimitri van Heesch2021-04-221-1/+1
|/ | | | | | | | | | | | | | | | | 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()'
* Refactoring: replace QCString with std::string in constexpDimitri van Heesch2021-02-061-3/+3
|
* Compilation error on debug compilation of constexp.lalbert-github2020-05-241-1/+1
| | | | | | | | | | | | I case we use `LEX_FLAGS=-d` to compile `constexp.l` we get the error: ``` constexp.l: In member function ‘bool ConstExpressionParser::parse(const char*, int, const QCString&)’: constexp.l:140:17: error: ‘yyscanner’ was not declared in this scope; did you mean ‘yyscan_t’? 140 | yyset_debug(1,yyscanner); | ^~~~~~~~~ | yyscan_t make[2]: *** [src/CMakeFiles/doxymain.dir/build.make:455: src/CMakeFiles/doxymain.dir/__/generated_src/constexp.cpp.o] Error 1 ```
* Enabled stricter compiler warnings and fixed all new warningsDimitri van Heesch2020-03-081-3/+11
|
* Fix compiler warnings on Windows (Visual Studio)Dimitri van Heesch2020-02-121-0/+3
|
* Remove global state from constexp lexerDimitri van Heesch2019-11-091-22/+35
|
* Consistent way to show scanner statealbert-github2019-09-051-0/+2
| | | | | 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.
* Correction warning messagealbert-github2019-06-011-1/+1
| | | | Consistency
* enable debug for re-entrant lexersAdrian Negreanu2019-05-221-0/+4
|
* Fixed memory leak in reentrant lexersDimitri van Heesch2019-05-121-1/+4
|
* constexp.l,y: generate a reentrant scanner and parserAdrian Negreanu2019-05-041-34/+42
|
* constexp.l: group the flex optionsAdrian Negreanu2019-05-041-1/+1
|
* flex: use %option instead of command line options.Adrian Negreanu2016-09-211-0/+2
|
* drop #include <unistd.h>Adrian Negreanu2015-05-151-2/+2
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* Bump copyright yearDimitri van Heesch2015-02-261-1/+1
|
* Updated copyrightDimitri van Heesch2014-02-111-1/+1
|
* Debug output for lexical analyzerAlbert2013-11-131-0/+3
| | | | | | | | | | | | | | 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)
* This patch contains changes regarding the build system so that the *nix and ↵albert-github2013-10-061-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Release-1.8.3.1Dimitri van Heesch2013-01-201-1/+1
|
* Release-1.8.1.2-20120729Dimitri van Heesch2012-07-291-0/+1
|
* Release-1.7.6.1-20120220Dimitri van Heesch2012-02-201-1/+1
|
* Release-1.7.3-20110123Dimitri van Heesch2011-01-231-1/+1
|
* Release-1.6.2-20100124Dimitri van Heesch2010-01-241-1/+1
|
* Release-1.5.4-20080101Dimitri van Heesch2008-01-171-2/+2
|
* Release-1.5.4Dimitri van Heesch2008-01-161-1/+1
|
* Release-1.5.1-20070219Dimitri van Heesch2007-02-191-1/+1
|
* Release-1.5.1-20070107Dimitri van Heesch2007-01-071-1/+1
|
* Release-1.5.1-20061202Dimitri van Heesch2006-12-021-1/+1
|
* Release-1.4.6-20060507Dimitri van Heesch2006-05-071-1/+1
|
* Release-1.4.6-20060115Dimitri van Heesch2006-01-151-1/+1
|
* Release-1.4.4Dimitri van Heesch2005-07-211-3/+5
|
* Release-1.4.1Dimitri van Heesch2005-01-111-1/+1
|
* Release-1.3.5-20040105Dimitri van Heesch2004-01-051-1/+1
|
* Release-1.3.2-20030708Dimitri van Heesch2003-07-081-1/+0
|
* Release-1.3-20030514Dimitri van Heesch2003-05-141-0/+2
|
* Release-1.3-rc2-20030119Dimitri van Heesch2003-01-191-1/+1
|
* Doxygen-1.2.13-20020122Dimitri van Heesch2002-01-221-1/+1
|
* Release-1.2.12-20011125Dimitri van Heesch2001-11-251-2/+4
|
* Release-1.2.8-20010715Dimitri van Heesch2001-07-151-16/+20
|
* Release-1.2.4-20010107Dimitri van Heesch2001-01-071-1/+1
|
* Release 2000-04-03Dimitri van Heesch2000-04-031-1/+2
|
* Release-1.1.1-20000326Dimitri van Heesch2000-03-261-1/+1
|
* Upgrade to 1.1.0Dimitri van Heesch2000-02-151-1/+1
|
* mods for doxygen-0.49-990728Dimitri van Heesch1999-12-151-2/+2
|
* initial versionDimitri van Heesch1999-12-151-0/+110