Dmitry Marakasov
94d39f6e91
Fix matchcompiler failure in case of parallel build
...
During parallel build, multiple processes will try to create build_dir
in parallel, so the build will fail. Fix that by calling makedirs
unconditionally and ignoring errors from it. If there's actual
problem with directory creation, it'll be caught later by isdir()
check.
2017-05-20 23:25:52 +02:00
amai
8fa4a92ce1
Make tags target phony. Add entry to gitignore
2017-05-20 22:27:49 +02:00
tetsuo55
2d24d5ce01
dmake: Add support for mingw64
...
running dmake under mingw64 causes an error
the makefile will have to be recreated
under linux
2017-05-11 10:36:37 +02:00
Alexander Mai
9d54ffd521
Correct script
2017-05-03 21:09:20 +02:00
Matthias Krüger
a26abfb8e4
reduce: fix build, adapt settings.
2017-04-11 12:09:18 +02:00
Matthias Krüger
c65725cb1b
matchcompiler: don't emmit '!true' or '!false'. Fold to 'false' or 'true'.
2017-04-02 16:35:39 +02:00
Matthias Krüger
1e5e32c4a2
testrunner: remove non-gcc-style output format
2017-02-26 21:39:06 +01:00
Matthias Krüger
9e2650db96
reduce: main(): replace "return false;" by "return EXIT_FAILURE;", clang 4 warned about this:
...
tools/reduce.cpp:771:17: warning: bool literal returned from 'main' [-Wmain]
return false;
^ ~~~~~
tools/reduce.cpp:776:17: warning: bool literal returned from 'main' [-Wmain]
return false;
^ ~~~~~
tools/reduce.cpp:782:17: warning: bool literal returned from 'main' [-Wmain]
return false;
^ ~~~~~
2017-01-17 01:32:29 +01:00
PKEuS
0236f67454
Fixed matchcompiler with Python 3.6 on Windows by using UTF-8 as encoding
2017-01-01 10:27:48 +01:00
Matthias Krüger
ecc91ba914
fix a couple of issues in shell scripts found by codacy.
2016-12-25 00:43:47 +01:00
Boris Egorov
743dcdd669
daca2: Use logging module instead of opening/closing results file
2016-12-08 21:18:16 +07:00
Boris Egorov
c250e385d3
daca2: Use argparse instead of manual argument parsing
2016-12-08 21:14:13 +07:00
Matthias Krüger
27bd4a7f4c
daca2: enable --inconclusive
2016-12-06 11:19:33 +01:00
Daniel Marjamäki
5426cfb15e
daca2: output warning id to make it possible to write more statistics
2016-12-06 09:33:41 +01:00
Matthias Krüger
59bbe6cd42
matchcompiler: simplify some more code
2016-11-26 16:27:39 +01:00
Matthias Krüger
80cb350a6b
matchcompiler: remove redundant variable 'neg' and do some minor reformatting
2016-11-26 15:41:59 +01:00
Matthias Krüger
b687e011f2
matchcompiler: --show-skipped: print locations of skipped patterns in file:line notation.
2016-11-24 00:36:23 +01:00
Daniel Marjamäki
0e9bf9f0c6
daca: skip virtuoso-opensource for now since it hangs
2016-10-17 09:48:02 +02:00
Daniel Marjamäki
fff8aa8590
dmake: pathmatch was moved from cli to lib
2016-10-02 13:32:39 +02:00
Daniel Marjamäki
e8b6235e23
dmake: pathmatch was moved from cli to lib
2016-10-02 13:15:51 +02:00
Daniel Marjamäki
3605457cbe
CLI: Fix exclude of absolute path. #4399
2016-10-02 12:38:44 +02:00
Daniel Marjamäki
652043fa22
daca2: allow setting cpu limit
2016-09-20 12:46:15 +02:00
Daniel Marjamäki
fd6b18f759
daca2: changed removeLargeFiles and removeAllExceptResults. hopefully these will handle problems better. And hopefully the problems will be logged better.
2016-08-21 11:54:08 +02:00
Matthias Krüger
032d2e5cd1
CXXFLAGS: remove -Winline (ticket #7693 )
...
The debug build (with -Winline) has no optimizations and when setting optimizations for a release builds, CXXFLAGS are overridden.
So we either do a non-optimized debug build (where no inlining takes place which makes -Winline redundant) or do a release build without -Warning flags which means we would never see -O2 and -Winline together.
2016-08-19 11:19:15 +02:00
Roberto Martelloni
c7c10d0b43
added python script to list in CSV format all errors without a CWE
2016-08-09 23:21:03 +01:00
Daniel Marjamäki
15c1942a64
daca2: allow skipping packages and allow setting workdir
2016-08-01 11:29:04 +02:00
Daniel Marjamäki
016bcaf9fe
dmake: Disable compiler warnings for external files
2016-07-28 13:54:08 +02:00
XhmikosR
07b43c6929
Ran autopep8.
2016-07-25 13:16:55 +03:00
Daniel Marjamäki
035a9a162a
daca2: write current time in report
2016-07-22 08:31:00 +02:00
Daniel Marjamäki
03d2829fb9
Merge simplecpp branch
2016-07-20 12:21:00 +02:00
Daniel Marjamäki
a87b4368cb
Revert "Preprocessor: Start replacing our Preprocessor code with simplecpp"
...
This reverts commit 9820783b60
.
There was Travis errors I'll need to look more at.
2016-07-07 23:45:42 +02:00
Daniel Marjamäki
9820783b60
Preprocessor: Start replacing our Preprocessor code with simplecpp
2016-07-07 22:58:56 +02:00
Daniel Marjamäki
e795eef465
rundaca: don't link libstdc++ statically
2016-07-01 15:46:20 +02:00
Daniel Marjamäki
315f705f53
rundaca: statically link libstdc++ for now
2016-06-20 10:13:56 +02:00
Daniel Marjamäki
fbc499d033
daca2-download.py: minor tweaks
2016-05-22 16:39:02 +02:00
Daniel Marjamäki
98626e5a46
rundaca2.py: The START is an index
2016-05-10 11:00:57 +02:00
Matthias Krüger
9bcb36e0bb
dmake: disable -Wsign-promo
2016-05-07 19:38:40 +02:00
Jérémy Lefaure
08d8b2da38
git-pre-commit-cppcheck: check only added or modified source files
...
The regexp is written according to git-diff-index manual.
2016-05-07 19:09:13 +02:00
Frank Zingsheim
f5bf0ff824
Fixed #7392 (matchcompiler fails with python 3.5)
2016-05-04 11:19:07 +02:00
Alexander Mai
0442764467
Skip another package in daca2 (gcc-arm) to avoid timeouts
2016-04-25 20:48:11 +02:00
Daniel Marjamäki
648d492f94
daca2: don't skip insighttoolkit, it does not hang as far as I see.
2016-02-15 16:56:23 +01:00
Daniel Marjamäki
a892e6eddc
daca2: do not skip boost
2016-02-12 12:08:39 +01:00
Daniel Marjamäki
087b233ffd
Daca2: don't skip flite anymore. Analysis without MAXTIME is still very slow.
2016-02-11 16:16:09 +01:00
Daniel Marjamäki
ec9facb701
rundaca: allow that start folder is set on command line, can be used when restarting daca2.
2016-02-08 09:28:02 +01:00
Daniel Marjamäki
b45c2851b0
daca2: changed checking of test code again. people might want to run cppcheck on their testcode to ensure there is not UB. we skip gcc testsuite because the torture tests are not meant to be valid.
2016-02-05 08:39:29 +01:00
Daniel Marjamäki
1d9537b259
daca2: don't run cppcheck on test code, that is rarelly meant to be valid and proper code
2016-02-05 08:34:35 +01:00
Alexander Mai
7b68da3017
Set max file size to 1MB
2016-02-02 17:44:52 +01:00
PKEuS
4b9241f643
Removed support for patterns like |a|b and a||b (equal to a|b|)
...
-> Improved performance by 1,3% (non-matchcompiled build)
2016-02-02 11:46:42 +01:00
Alexander Mai
f8de6a66ca
Raise file size limit for daca2 from 100kb to 1mb
2016-01-31 21:18:50 +01:00
Robert Reif
0ddb2f1ce1
Fixed #7298 (reduce doesn't support --library= and --std= on the command line)
2016-01-31 12:45:17 +01:00
Daniel Marjamäki
8ef17e70ca
reduce: try removing codeblocks below ';{}'
2016-01-28 08:05:43 +01:00
Daniel Marjamäki
477d02bbe7
reduce: fix
...
[ci skip]
2016-01-27 15:30:10 +01:00
Daniel Marjamäki
4d2caff360
reduce: try to reduce blocks better
2016-01-27 15:03:52 +01:00
Daniel Marjamäki
ef1dd89d72
reduce: cleanups
2016-01-27 08:20:58 +01:00
Daniel Marjamäki
cb6c9e1a71
reduce.py: fix hang
2016-01-25 16:25:50 +01:00
Daniel Marjamäki
620c6e8f1c
reduce: improved removing of code blocks. loop until nothing is removed.
2016-01-25 13:41:27 +01:00
Daniel Marjamäki
7d8853d604
reduce: speed up the 'combinelines' pass
2016-01-21 14:42:10 +01:00
Daniel Marjamäki
49ff511324
Added script reduce.py that reduces code. It can complement the reduce tool. It can also be used with other tools and not just cppcheck.
2016-01-21 11:03:55 +01:00
Daniel Marjamäki
516f043a43
times-vs.py: Added usage instructions
2016-01-19 13:46:21 +01:00
Daniel Marjamäki
93dd3a21fd
Add times script for windows that uses VS compiler
2016-01-19 13:35:38 +01:00
Albert ARIBAUD (3ADEV)
38e70dfb74
Preprocessor directives for addons
...
This patch augments the XML dumps with a 'directivelist'
subnode which lists all raw preprocessor directives met
while reading the source code in each configuration.
Also, the addons/cppcheckdata.py file has been extended
to give easy access to the list of directives and to
provide Python support for the --template (or short -t)
option.
Finally, an new addon, addons/y2038/y2038.py, is created
to detect when a glibc symbol might be Y2038-sensitive,
based on whether and how _TIME_BITS and _USE_TIME_BITS64
are defined when meeting the symbol.
2016-01-15 12:36:35 +01:00
Aleksandr Pikalev
e92bbf6481
Fixed #7275 - Make GUI tests buildable
...
* Use -std=c++11 flag for gcc and clang
* Use $$PWD variable in qmake files to have correct paths
* Change tokenizer.simplifyTokenList() to tokenizer.simplifyTokenList2()
* Add build-generated files to .gitignore
* Link libpcre only if rules are enabled
2016-01-08 15:21:36 +01:00
Martin Ettl
7cb27d91c4
dmake: Added -Wno-multichar flag.
2016-01-08 11:40:54 +01:00
Albert ARIBAUD (3ADEV)
97b43c78ce
Run all Python code through autopep8
...
Run all Python code through autopep8 as follows:
autopep8 -ri --ignore=E261,E262,E302 --max-line-length 1000 .
E261 or E262 would cause spaces after a comment's hash sign
to be squashed. Since some of the comments in cppcheck's
Python code have space-indented code examples, not ignoring
E261 or E262 would wreck the formatting of those examples.
E302 prevents autopep8 from adding some blank lines.
setting --max-line-width ensures no line will be wrapped.
2016-01-05 13:30:32 +01:00
Albert ARIBAUD (3ADEV)
4b247c94dd
Remove tools/argparse.py
...
As cppcheck only supports Python 2.7 and 3, and as
both provide argparse already, we can remove the
one in cppcheck.
build/*.cpp, as generated with "make SRCBUILD=build",
is strictly unchanged by this removal.
2016-01-05 10:25:12 +01:00
Matthias Krüger
d3093a6ca5
reduce: fix build
2016-01-03 17:29:40 +01:00
Daniel Marjamäki
ca4f55ec4c
Cleanup Copyrights. Now all should be just for Cppcheck team.
2016-01-01 23:04:16 +01:00
Lauri Nurmi
996c9244d8
Update copyright year to 2007-2016.
2016-01-01 15:34:45 +02:00
Daniel Marjamäki
8171154e12
Fixed #7230 (Confusing code snippet in error message)
2015-12-31 01:15:49 +01:00
Matthias Krüger
315d50271a
add small script which converts code to a format for testrunner testcases.
2015-12-17 14:25:24 +01:00
Frank Zingsheim
e0e8c3fe60
Fix #7210 (Compiled match versus parsed match "|a|b")
2015-12-11 20:21:38 +01:00
Daniel Marjamäki
392cda8bce
Remove qmake pro files. qmake is just for cppcheck-gui nowadays.
2015-12-11 15:20:57 +01:00
Alexander Mai
f762affea0
Small refactoring: replace NULL by nullptr, remove redundant static keyword, Tokenizer::setVarId() uses const variable 'notstart'
2015-11-30 22:13:49 +01:00
Daniel Marjamäki
a5149d68ab
daca2: fix compilation of cppcheck
2015-11-23 11:19:44 +01:00
Daniel Marjamäki
0f9d90d2be
Changed Copyrights. Removed my name.
2015-11-18 20:04:50 +01:00
Daniel Marjamäki
d0e1583f20
daca2: compile with debug info, when there is exception write info on stderr
2015-11-18 13:36:23 +01:00
Alexander Mai
6cf7ff4243
Try to get error information upon crash in daca2 into log output
2015-11-15 20:38:55 +01:00
Alexander Mai
65666a1ba4
Makefile: explicit list directories which should be used with ctags. Run astyle.
2015-11-15 19:03:18 +01:00
Simon Martin
14d2830e49
Restore build on OSX, where make defines CXX as "c++" by default.
2015-11-14 07:53:34 +01:00
orbitcowboy
ab90a7eb49
Fixed broken HAVE_RULE support. Updated Makefile. Added override keyword when HAVE_RULES is set.
2015-11-13 11:38:06 +01:00
Matthias Krüger
11915f84e2
dmake: force-add -std=c++0x if we compile with g++ or clang++
2015-11-10 21:07:06 +01:00
Alexander Mai
ab296fa93f
7111 segmentation fault (invalid code) in Tokenizer::simplifyRedundantParentheses
2015-11-08 13:45:55 +01:00
Alexander Mai
445907d930
Makefile: Move -std=c++0x to CXXFLAGS to allow using other compilers
2015-11-08 12:52:56 +01:00
Boris Egorov
c74529ae08
Add git pre-commit hook script
2015-10-19 11:23:01 +02:00
Matthias Krüger
73b088a6dd
dmake: don't compile clang build with -D_GLIBCXX_DEBUG since it breaks the build.
2015-10-05 09:50:18 +02:00
Daniel Marjamäki
7f4d39270c
Updated DACA2 scripts
2015-09-28 09:08:37 +02:00
Daniel Marjamäki
b7ee08ea65
remove unused script aws.py
2015-09-10 07:29:42 +02:00
Alexander Mai
0d7d1e8350
Add 'run-dmake' as PHONY target to Makefile to avoid linking dmake always
2015-09-05 17:12:15 +02:00
Daniel Marjamäki
1b29a99e45
tools: refactoring daca2
2015-08-21 15:46:10 +02:00
XhmikosR
7d0075357e
PEP8 fixes.
...
[ci skip]
2015-08-21 11:59:52 +03:00
Daniel Marjamäki
cde7f48feb
push my rundaca2.py script I use
2015-08-20 12:57:45 +02:00
Daniel Marjamäki
e5308a105a
daca2-addons: fix scripts
2015-08-19 15:02:09 +02:00
Daniel Marjamäki
153ac90663
daca2: added scripts for running addons
2015-08-19 14:45:42 +02:00
Dmitry Marakasov
3bf737acbd
Make DB2MAN overridable
...
On different systems it may point to different locations, e.g. FreeBSD uses ${LOCALBASE}/share/xsl/docbook/manpages/docbook.xsl
2015-08-17 19:31:08 +03:00
PKEuS
4d80df2f4a
Added pointer to Type to Token (similar to Token::Variable() and Token::function()):
...
- Accessible via Token::type()
- Renamed former Token::type() to Token::tokType()
- Removed SymbolDatabase::isClassOrStruct()
2015-08-15 11:19:21 +02:00
Alexander Mai
a4e0a8bf54
daca2: enable exception-handling and drop valgrind from list of skipped packages
2015-08-01 17:41:26 +02:00
Daniel Marjamäki
8d3b5bb95e
generate_and_run_more_tests: Add testuninitvar
2015-07-26 11:29:02 +02:00
Daniel Marjamäki
856d496c71
fix dmake
2015-07-23 15:02:32 +02:00
PKEuS
91c7361034
Fixed dmake and travis build
2015-07-23 14:53:18 +02:00
Frank Zingsheim
907dea92b1
Fixed #6844 (CMake with matchcompiler)
2015-07-23 10:49:53 +02:00
Daniel Marjamäki
f37c6b9e76
generate_and_run_more_tests: add testnullpointer
2015-07-22 18:17:04 +02:00
Daniel Marjamäki
1df46140c1
generate_and_run_more_tests.sh: Refactoring
2015-07-22 13:44:08 +02:00
Daniel Marjamäki
4039e231a5
Add test scripts for 'Extra tests'
2015-07-22 13:07:17 +02:00
Daniel Marjamäki
bb95bc9fc5
Travis: run extra tests
2015-07-22 12:55:39 +02:00
Daniel Marjamäki
b2b4bb49fa
Refactoring handling of comparisons
2015-07-22 12:31:18 +02:00
Daniel Marjamäki
c67776c04d
Testing: extract testcases, edit comparisons, run cppcheck, compare results
2015-07-22 09:52:24 +02:00
Daniel Marjamäki
678d755ce5
disable -Woverloaded-virtual warnings to avoid a few FPs
2015-06-30 20:38:15 +02:00
Daniel Marjamäki
d0e6b77fd1
cppcheckdata.py: moved file from tools to addons
2015-06-21 09:47:52 +02:00
Daniel Marjamäki
0bdd355fac
cppcheckdata.py: update ValueFlow handling
2015-06-20 21:58:23 +02:00
Frank Zingsheim
6ba2534f32
Fixed #6716 (Performance: Alternative String Representation in Match Compiler)
...
Quickfix of tools/test_matchcompiler.py for Alternative String Representation
_matchStrs does not exist in Match Compiler anymore.
2015-06-07 20:24:33 +02:00
Frank Zingsheim
bac5aac92a
Fixed #6716 (Performance: Alternative String Representation in Match Compiler)
2015-06-07 16:18:40 +02:00
Daniel Marjamäki
42e82eda96
dmake: suppress Wsign-compare warnings in release builds
2015-05-02 10:29:52 +02:00
Daniel Marjamäki
54ecf8af82
daca2-report: handle \r also
2015-04-29 17:23:24 +02:00
XhmikosR
c090ed2fc9
PEP8 fixes.
...
[ci skip]
2015-04-20 21:11:45 +03:00
Daniel Marjamäki
066b24dc9c
dmake: disable -Wconversion to avoid false positives when compiling
2015-04-15 11:32:52 +02:00
Matthias Krüger
f714f38089
reduce: fix cppcheck style remark about CppcheckExecutor not being explicit.
...
[tools/reduce.cpp:47]: (style) Class 'CppcheckExecutor' has a constructor with 1 argument that is not explicit.
2015-04-07 01:58:10 +02:00
Matthias Krüger
80be769912
matchcompiler: pep8 fixes
2015-03-20 09:32:56 +01:00
Alexander Mai
b5f0eec44a
#6559 Regression/ false positive: Return value of allocation function OpenFile is not stored. Add required definitions to windows.cfg, include afx_msg. Add test file test/cfg/windows.cpp to check windows configuration. Fix for gnu.cfg. FileLister now features a non-recursive mode.
2015-03-05 06:48:44 +01:00
Daniel Marjamäki
9b874b97f0
add parse-glibc script that match annotations in system headers against cppcheck cfg files
2015-02-26 20:40:40 +01:00
PKEuS
688d5d5c54
matchcompiler.py: Added missing parantheses
2015-01-31 12:36:22 +01:00
PKEuS
b2835051df
Refactorization: Renamed Token::Match pattern %var% to %name%, implement new pattern %var% which is true if varId > 0.
2015-01-31 12:32:04 +01:00
Matthias Krüger
e56671101e
tests: add a script which runs test/cfg tests.
...
add new make target (checkcfg) which builds cppcheck and executes the script
make travis run checkcfg
2015-01-27 19:46:52 +01:00
Thomas Jarosch
0c21f77873
MC: Add ability to show skipped (=non-compiled) patterns
2015-01-09 22:50:42 +01:00
Thomas Jarosch
5b4f543c3b
Match compiler: Support match patterns with escaped quotes
...
This allows us to compile patterns like 'extern "C"'.
Fixes long standing open issues in the MC unit test.
2015-01-09 22:41:40 +01:00
Thomas Jarosch
027ce0e81f
Match compiler: Add unit test for C string replacements
2015-01-09 20:20:54 +01:00
Thomas Jarosch
07231c832c
Match compiler: Allow multiple spaces / no space at all when searching for C-strings
...
This catches 32 more C strings.
2015-01-09 01:18:50 +01:00
Thomas Jarosch
965775423b
Remove useless forward declarations
...
Instead move the 'static' keyword to the function implementation.
2015-01-08 23:58:00 +01:00
Daniel Marjamäki
ff11ba9847
Updated copyright year to 2015
2015-01-03 12:14:58 +01:00
Thomas Jarosch
95940ff0ef
python3 compatibility
2014-12-22 16:04:29 +01:00
Thomas Jarosch
91e45ba8d7
pep8 fix
...
pep8 reported:
extracttests.py:233:16: E713 test for membership should be 'not in'
2014-12-22 14:27:47 +01:00
Daniel Marjamäki
051d42ae6b
astyle formatting
2014-11-20 14:20:09 +01:00
orbitcowboy
f5d804f71a
running astyle
2014-11-20 10:13:03 +01:00
Alexander Mai
b8224edaac
Remove iceowl from list of skipped packages. Document the remaining skipped packages with a reference to accoding trac ticket
2014-11-15 12:10:18 +01:00
Daniel Marjamäki
33f384c48e
daca2: allow -j option
2014-10-11 18:04:53 +02:00
Daniel Marjamäki
b96f4f53ad
daca2: removed the bailout for wxwidgets. the varid fix for typedefs seem to fix the hangs.
2014-10-11 16:48:00 +02:00
Daniel Marjamäki
a33f01a2df
daca2: skip wxwidgets for now to avoid hang
2014-10-11 14:05:11 +02:00
Daniel Marjamäki
748e3a4ba3
daca2: skip valgrind for now because it's extremely slow. see #6151
2014-10-11 07:54:41 +02:00
Gianfranco Costamagna
3eafb2b5c4
Makefile: Fix DESTDIR handling
2014-09-25 18:50:48 +02:00
Daniel Marjamäki
e875146060
ci.py: minor refactoring
2014-09-09 05:35:11 +02:00
Daniel Marjamäki
da3e8606ec
ci.py: sleep
2014-09-08 17:39:18 +02:00
Daniel Marjamäki
5fecd4c194
ci.py: Cleanup, DACA2 will be executed on other computers
2014-09-08 17:25:57 +02:00
Matthias Krüger
7784bbfa86
times.sh: create a variable which can be changed to alter the iterations/how often we run cppcheck on one commit (default: 4).
2014-08-31 11:10:55 +02:00
Daniel Marjamäki
fbf09f11a0
reduce: simplify multiline #define statements
2014-08-01 13:35:31 +02:00
Daniel Marjamäki
3d8ac3d0a1
astyle formatting
...
[ci skip]
2014-07-30 17:53:41 +02:00
Daniel Marjamäki
1144384242
reduce: simplify multiline function declarations better
2014-07-30 17:43:24 +02:00
Daniel Marjamäki
c5e9da2984
xml dump: add more token attributes
2014-07-21 12:44:53 +02:00
Daniel Marjamäki
57a05bc341
xml dump: added 'astIsFloat' utility function in cppcheckdata.py
2014-07-20 15:24:40 +02:00
Daniel Marjamäki
54dbb5f832
cppcheckdata.py: Added Token.getValue()
2014-07-18 18:10:52 +02:00
Daniel Marjamäki
4a784ce2e9
cppcheckdata.py: My intention is that it will be possible to use this module from any code no matter if it's open source or closed source etc. And for any purposes. Added a comment at the top.
2014-07-18 17:57:02 +02:00
Daniel Marjamäki
d003a47826
xml dump: Fixed ValueFlow handling in cppcheckdata.py
2014-07-18 17:29:39 +02:00
Daniel Marjamäki
d3425d5c61
xml dump: fixed cppcheckdata loader so previous/next will work
2014-07-17 07:39:19 +02:00
Daniel Marjamäki
27829383a5
xml dump: Read scope-type attribute in cppcheckdata.py module
2014-07-16 16:15:28 +02:00
Daniel Marjamäki
d734a98c89
xml dump: Added tools/cppcheckdata.py that loads the dump.
2014-07-16 15:26:59 +02:00
Matthias Krüger
bfb2ebedec
daca: keep files that we can check (see path.cpp).
2014-07-09 18:47:44 +02:00
PKEuS
62d07878d7
Fixed two issues in matchcompiler:
...
- Use correct findmatch or findsimplematch for verification
- Print failing pattern also for findmatch/findsimplematch
2014-07-02 15:25:54 +02:00
PKEuS
ec59f1d9df
matchcompiler.py: Check Token::type() before comparing Token::str() against "||" or "|"
2014-06-30 14:04:18 +02:00
PKEuS
78f0a47170
matchcompiler.py: Show pattern that caused the InternalError
2014-06-30 14:04:18 +02:00
Daniel Marjamäki
1bcb22e4a4
ci.py: run daca2 in alphabetical order again
2014-06-28 20:11:46 +02:00
Toralf Förster
c1d8d1b26a
tools/times.sh: exit if prereq were not met
...
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:55:51 +02:00
Toralf Förster
4b135b935d
tools/times.sh: use always long-opts
...
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:49:47 +02:00
Toralf Förster
fa18adea6f
tools/times.sh: prefer a loop over repeating the same command
...
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:48:56 +02:00
Toralf Förster
da017d6888
tools/times.sh: adapt comment to the actual loops
...
left over from #ea9f0718
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:46:31 +02:00
PKEuS
e2b77a33dd
Fixed test_matchcompiler.py
2014-06-18 18:51:24 +02:00
PKEuS
47a1122eb8
Updated matchcompiler to latest changes
2014-06-14 10:57:38 +02:00
orbitcowboy
5c2ed8450e
Revert my previous fix 28763fa020
and suppress gcc false positive warnings.
2014-06-13 15:46:43 +02:00
Alexander Mai
16aa891da2
#5798 cfg files are not installed to CFGDIR. Extend patch to update dmake.cpp. Also fix some g++ compiler warnings
2014-05-17 11:05:42 +02:00
Alexander Mai
fc592673a1
Fix gcc compiler warning by adding #ifdef GDB_HELPERS
2014-05-15 21:02:08 +02:00
Matthias Krüger
52ba857f8d
dmake: make clean: also remove objects files inside tools/ (dmake.o, reduce.o)
2014-05-14 13:20:24 +02:00
Matthias Krüger
f138bf004b
dmake: make clean: remove dmake binary as well.
2014-05-09 08:45:25 +02:00
Alexander Mai
417a916ece
Use CXXFLAGS upon linking dmake for consistency
2014-05-04 20:52:54 +02:00
Daniel Marjamäki
636a15ac55
Doublefree: Fixed FP when exit() is called
2014-05-04 12:02:55 +02:00
amai
a5aac3b551
Add missing dependencies for dmake
2014-05-03 20:05:58 +02:00
amai
3bdfad0b73
reduce and dmake now use existing object files as dependencies whenever possible. Fix compilation for reduce on cygwin.
2014-05-03 18:54:48 +02:00
Alexander Mai
0b26a1f27a
Fix compiler warnings
2014-04-27 18:56:54 +02:00
Alexander Mai
9e9bc1e457
Since reduce shares object files with cppcheck it should use the same compiler and linker flags
2014-04-27 18:56:30 +02:00
Alexander Mai
290f0ef022
#5644 Compilation failure on Cygwin - related to tinyxml2 (#undefine __STRICT_ANSI__ on cygwin). Patch by ir0nh34d
2014-04-24 22:22:43 +02:00
Daniel Marjamäki
ea016d4d73
dmake: include lib/cxx11emu.h in release builds also
2014-04-20 12:30:05 +02:00
orbitcowboy
bd242c07eb
Fixed typo in travis script and tools/readme.md, no functional change.
2014-04-13 23:17:41 +02:00
Alexander Mai
9ac83d7624
reduce is linking against LIBS as well, to keep build scripts e.g. on travis working
2014-04-11 23:24:47 +02:00
Alexander Mai
fb13c56ef0
Makefile: reduce now also depends on LIBOBJ: command not found
2014-04-11 22:27:29 +02:00
Daniel Marjamäki
c27a482a84
Merge pull request #284 from matthiaskrgr/dmake
...
"make dmake" will now compile dmake and directly run it afterwards, bump kernel version checked by travis to 3.14
2014-04-05 08:23:15 +02:00
Daniel Marjamäki
749117a7ff
daca2: we must bailout for now when checking insighttoolkit because there is some hang
2014-04-03 17:10:35 +02:00
Matthias Krüger
4481015bdc
dmake: "make dmake" now also runs the binary after compilation.
2014-04-03 16:41:58 +02:00
Daniel Marjamäki
22c4d45ca0
astyle formatting
2014-03-31 03:06:57 +02:00
Alexander Mai
0242a3c188
-rdynamic cannot be used on mingw
2014-03-30 20:50:03 +02:00
Daniel Marjamäki
568b9677d7
daca2: Added script that downloads all packages and save reduced archives in the folder ~/daca2-packages
2014-03-23 11:45:29 +01:00
Alexander Mai
29165f3e5f
Add -rdynamic to the linker flags to allow obtaining a bracktrace
2014-03-21 22:33:07 +01:00
XhmikosR
1df5ccf315
daca2-report.py: add missing new line in the generated HTML.
...
[ci skip]
2014-03-21 20:38:02 +02:00
XhmikosR
fc54e6acc4
Trim tailing spaces and convert tabs to spaces.
2014-03-18 17:00:28 +02:00
XhmikosR
4928dc52bb
daca2: Move style into daca2.css.
2014-03-18 16:50:38 +02:00
XhmikosR
b608a8904a
Minify sorttable.min.js and use that in daca2-report.py.
2014-03-18 16:48:03 +02:00
Matthias Krüger
76fb3903ff
tools: times.sh: show more information in stdout (while still printing it to the log), compute averages of runs, automatically compile and run "times" binary after generating the log.
2014-03-17 02:12:37 +01:00
XhmikosR
66e448f0fd
daca2-report.py: tweak style more.
...
[ci skip]
2014-03-16 13:27:24 +02:00
XhmikosR
9e80080738
Add sorttable.js to the repository.
2014-03-16 13:22:22 +02:00
XhmikosR
c7b2f08782
daca2-report.py: move script inclusion after any style.
...
[ci skip]
2014-03-16 13:14:19 +02:00
XhmikosR
bfd388dc15
daca2-report.py: fix CSS style.
...
[ci skip]
2014-03-16 12:19:52 +02:00
XhmikosR
98fcaa7a9e
daca2-report.py: remove unneeded end tags.
...
[ci skip]
2014-03-16 12:08:58 +02:00
Matthias Krüger
ea18e4b245
daca: count varid 0 occurences per file.
2014-03-12 12:49:06 +01:00
XhmikosR
aabee422e0
PEP8 fixes.
2014-03-11 17:42:14 +02:00
Alexander Mai
b44c1b52ee
daca2: made mainpage report sortable
2014-03-09 08:33:27 +01:00
Simon Martin
a3d1cac79c
Ticket #5373 : Keep track whether tokens come from a C or C++ file to properly handle %type% in Token::Match with "delete"
2014-03-08 21:26:06 +01:00
Daniel Marjamäki
dddd9848b8
daca2: remove ../clang/INPUTS/.. files since these take so long time to scan
2014-03-06 20:36:52 +01:00
Daniel Marjamäki
5eb79f0fa5
Merge pull request #252 from matthiaskrgr/dmake_externals
...
Dmake externals
2014-03-04 06:04:11 +01:00
Matthias Krüger
c108321329
dmake: when building cppcheck. do not include "externals" dir, there are no files in there (only the tinyxml dir which is already handled via -Iexternals/tinyxml).
2014-03-03 12:09:21 +01:00
Matthias Krüger
a9df4a3288
man, htdocs, gui, test, tools: bump a few more copyrights to 2014
2014-03-03 11:03:17 +01:00
Daniel Marjamäki
43d48574c5
ci.py: fixed daca2folder() when results is empty
2014-02-23 10:26:01 +01:00
Daniel Marjamäki
1d801ce7b1
daca2: fixed wget function
2014-02-23 10:21:00 +01:00
Daniel Marjamäki
6273a270c7
daca2: tell wget to overwrite file. We want that the correct file is used.
2014-02-22 07:52:51 +01:00
Lauri Nurmi
91340d4043
Emulate the C++11 'nullptr' and 'static_assert'
2014-02-15 07:52:17 +01:00
Daniel Marjamäki
fd3a8a2a18
Update copyright
2014-02-15 07:45:39 +01:00
Daniel Marjamäki
b88fbb9857
CI: run daca2 on oldest folder
2014-02-07 06:37:42 +01:00
Matthias Krüger
ec7e54c123
daca2: count crashes of cppcheck in index table.
2014-01-29 12:54:52 +01:00
Daniel Marjamäki
a7146916b1
Makefile: added -Wno-sign-compare. I don't like this warning
2014-01-18 09:51:48 +01:00
Ryan Pavlik
065db3d9f6
Add a rule to the cli makefile to actually build TinyXML2
2014-01-17 15:52:05 -06:00
Matthias Krüger
0cfd60aa34
travis: rewrite config file.
...
Uses CXXFLAGS -O2 instead of default flags to speed up self checking.
Testing is done with the following settings:
1) gcc CXXFLAGS=-O2
2) gcc CXXFLAGS=-O2 SRCDIR=build VERIFY=1
3) gcc CXXFLAGS=-O2 MAKEFLAGS="HAVE_RULES=yes"
4) gcc CXXFLAGS=-O2 SRCDIR=build VERIFY=1 MAKEFLAGS="HAVE_RULES=yes"
5) clang CXXFLAGS=-O2
6) clang CXXFLAGS=-O2 SRCDIR=build VERIFY=1
7) clang CXXFLAGS=-O2 MAKEFLAGS="HAVE_RULES=yes"
8) clang CXXFLAGS=-O2 SRCDIR=build VERIFY=1 MAKEFLAGS="HAVE_RULES=yes"
Changes made to before_install:
installe libpcre3
Changes made to script:
* make and make test are now called seperately
* cppcheck also checks "build" folder (created by SRCDIR=build) if existing.
* gui is built twice, one time with HAVE_RULES=yes as qmake argument and one time without it.
* a script has been added and run which returns false if cppcheck --showtime=top5 does not return 7 lines indicating that something is broken
2014-01-12 22:47:21 +01:00
Daniel Marjamäki
424675982a
dmake: use -std=c++0x instead of -std=c++11 as it's supported by earlier gcc
2014-01-12 15:38:51 +01:00
Daniel Marjamäki
50c8075b15
dmake: use -std=c++11 even if CXXFLAGS is redefined
2014-01-12 13:47:53 +01:00
Daniel Marjamäki
4224f873fd
dmake: added -std=c++11 flag
2014-01-12 13:14:46 +01:00
Daniel Marjamäki
d618730c96
Merge pull request #211 from matthiaskrgr/filemodes
...
make tools/times-tags.sh and tools/times.sh executable (mode 755).
2014-01-05 22:17:55 -08:00
Daniel Marjamäki
af8f5ef57c
daca2: remove aws code from daca2-report
2014-01-06 06:51:04 +01:00
Matthias Krüger
bf34a0aafa
make tools/times-tags.sh and tools/times.sh executable (mode 755).
2014-01-05 13:58:59 +01:00
Daniel Marjamäki
0851408a26
times.sh: Use SRCDIR to get more accurate results
2014-01-05 13:07:32 +01:00
Daniel Marjamäki
cb40e83261
daca2: added --tries and --timeout in wget command
2014-01-02 16:50:12 +01:00
Daniel Marjamäki
5d31385161
daca2: fixed exitcode handling
2013-12-31 20:56:16 +01:00
Daniel Marjamäki
56a5b0d55f
daca2: If cppcheck crash, the exitcode is nonzero. Write message in the report when the exitcode is nonzero.
2013-12-31 18:24:32 +01:00
Daniel Marjamäki
a3a8edc00d
ci: use CFGDIR flag
2013-12-28 12:17:30 +01:00
Daniel Marjamäki
9e0d7d86e9
dmake: Improved handling of CFGDIR
2013-12-28 12:15:08 +01:00
Lucas Manuel Rodriguez
4a46029ba6
Add readme.md for 'tools' directory
2013-12-27 13:58:08 -02:00
Daniel Marjamäki
d3a848f2e6
Makefile: Added optional CFGDIR parameter that allows user to specify where Cppcheck will look for cfg files.
2013-12-26 18:41:51 +01:00
Daniel Marjamäki
31368d946b
daca2-report: insert spaces between 'Most recently updated' items
2013-12-15 12:33:06 +01:00
Daniel Marjamäki
825174d394
ci.py: changed scp commands
2013-12-13 06:57:08 +01:00
Daniel Marjamäki
77a5ad03a6
ci: minor updates
2013-12-12 21:08:15 +01:00
Daniel Marjamäki
17099d74d6
ci.py: copy std.cfg to daca2 folder to get better results.
2013-12-12 20:10:46 +01:00
Daniel Marjamäki
663f5a14b0
daca2: avoid hang for iceowl package
2013-11-30 16:16:11 +01:00
Daniel Marjamäki
2b7835c5f9
daca2-report: Removed text about hardware running daca2
2013-11-28 19:27:37 +01:00
Daniel Marjamäki
a4eeddd0f6
daca2-report: handle when datestr is None
2013-11-28 17:44:50 +01:00
Daniel Marjamäki
6b4016be42
daca2-report: get results from aws and show most recent results on web
2013-11-27 19:17:22 +01:00
Daniel Marjamäki
d60c885f08
Daca2: use proper build flags in ci.py
2013-11-24 14:57:54 +01:00
Daniel Marjamäki
4e626d0907
daca2: update aws script. copy results for raspberry.
2013-11-24 14:55:49 +01:00
Daniel Marjamäki
d5bb5d6b77
daca2: Change date field to date when analysis ends.
2013-11-24 10:50:16 +01:00
Daniel Marjamäki
02c299405b
daca2: write number of error,warning,performance,portability,style in report
2013-11-24 10:47:12 +01:00
Daniel Marjamäki
514218da31
Daca2: Updated aws compilation flags
2013-11-23 16:38:52 +01:00
Daniel Marjamäki
0be5caf48d
Daca2: updated aws script
2013-11-23 16:35:52 +01:00
Daniel Marjamäki
a62a46c010
DACA2: little cleanup of aws script
2013-11-23 16:25:04 +01:00
Daniel Marjamäki
a35a3236d6
Daca2: Added aws.py for secondary daca2 script
2013-11-23 16:22:11 +01:00
Daniel Marjamäki
992f61d911
ci.py: refactoring
2013-11-23 16:00:28 +01:00
Daniel Marjamäki
007e2d9dd5
daca2: handle links better
2013-11-18 17:59:47 +01:00
XhmikosR
ff4cf68338
Improve daca2-report.py.
...
* remove empty <td>
* add meta charset
* remove double space
* remove unneeded escapes
2013-11-10 17:35:31 +02:00
Daniel Marjamäki
e73acbaab6
daca2-report: graphical updates. write date when each 'folder' is updated. write some more description about the project. try to fix problem that & is not displayed properly
2013-11-04 13:18:01 +01:00
Daniel Marjamäki
46b4a19bd3
Added CI script to repo
2013-11-02 17:39:42 +01:00
Daniel Marjamäki
e948f4c9ee
daca2: don't remove large text files. there was some strange problem that results.txt was removed when a results.txt in a subfolder was removed.
2013-11-02 12:03:25 +01:00
Daniel Marjamäki
b577b12660
daca2: skip boost to avoid hang
2013-10-28 18:09:05 +01:00
Daniel Marjamäki
9faaef840b
daca2: check all extracted files
2013-10-27 07:53:23 +01:00
Daniel Marjamäki
aaf5bbb7ad
daca2: minor tweaks of wget and removeLargeFiles
2013-10-26 11:47:15 +02:00
Daniel Marjamäki
45e7c488a0
daca2: dont terminate when a package fails. try to continue.
2013-10-25 06:43:08 +02:00
Daniel Marjamäki
2f864dec49
daca2: fixes
2013-10-24 18:36:08 +02:00
Daniel Marjamäki
ab2864e1cb
daca2: use ls-lR file
2013-10-24 18:22:15 +02:00
Daniel Marjamäki
fc9998e439
daca2: bailout if download fails
2013-10-24 17:39:37 +02:00
Daniel Marjamäki
b15eeb0aa8
autopep8 formatting
2013-10-20 18:36:33 +02:00
Daniel Marjamäki
47766736fc
daca2: handle xz compression
2013-10-20 12:45:05 +02:00
Daniel Marjamäki
f58b4b61e2
daca2: improved command line flags
2013-10-20 11:28:16 +02:00
Daniel Marjamäki
17f8edfada
daca2: tried to improve getpackages to be more robust
2013-10-20 11:25:31 +02:00
Daniel Marjamäki
4debaa2b92
daca2: alloc passing rev to script
2013-10-20 10:49:54 +02:00
Daniel Marjamäki
7f9f624215
daca2: more reliable ftp
2013-10-19 13:46:15 +02:00
Daniel Marjamäki
c9491f952b
daca2: skip flite, quick fix of possible hang
2013-10-19 09:53:23 +02:00
XhmikosR
0dba668661
daca2-report.py: use a doctype.
2013-10-18 17:37:03 +02:00
Daniel Marjamäki
88447385c2
autopep8 formatting
2013-10-18 17:35:59 +02:00
Daniel Marjamäki
072c80bde8
daca2: cleanup large files before cppcheck starts
2013-10-18 05:31:00 +02:00
Daniel Marjamäki
91e23c0660
daca2: don't check large files
2013-10-18 04:53:14 +02:00
Daniel Marjamäki
2d38245ea7
daca2-report: rephrazed 'Most recently updated'
2013-10-16 22:31:33 +02:00
Daniel Marjamäki
c593092611
daca2-report.py: Added script that generates daca2 report
2013-10-16 18:15:51 +02:00
Daniel Marjamäki
94f91f20e1
daca2: improved cleanup
2013-10-16 17:22:00 +02:00
Daniel Marjamäki
cee40beee1
daca2: removing readonly files/folders
2013-10-14 15:49:11 +02:00
Daniel Marjamäki
554790afcf
daca2: refactoring. gather list of archives from ftp server then disconnect.
2013-10-13 14:13:10 +02:00
Daniel Marjamäki
a305698442
daca2: catch EOFError exceptions
2013-10-13 13:10:25 +02:00
Daniel Marjamäki
cb56db5f21
daca2: import missing datetime module
2013-10-13 11:47:51 +02:00
Daniel Marjamäki
a61ccf2e9a
daca2: write date in results
2013-10-13 11:43:05 +02:00
Daniel Marjamäki
69ec624ea5
daca2: refactoring
2013-10-13 11:10:22 +02:00
Daniel Marjamäki
398ed973f4
matchcompiler: autopep8 formatting
2013-10-13 11:01:50 +02:00
Daniel Marjamäki
a7e925283a
daca2: autopep8 formatting
2013-10-13 10:51:18 +02:00
Daniel Marjamäki
9aee165650
daca2: catch exception when generating daca2 report
2013-10-13 10:40:01 +02:00
Daniel Marjamäki
b1470dc36e
daca2: choose folder from command line
2013-10-13 08:35:20 +02:00
Daniel Marjamäki
95138dbead
daca2: generate report
2013-10-13 08:07:39 +02:00
Daniel Marjamäki
aa1b77f45d
daca2: removed -j2 to reduce cpu load
2013-10-12 20:40:04 +02:00
XhmikosR
e6e6335473
Revert 568a49c409
and do the changes properly.
2013-10-12 19:44:07 +03:00
XhmikosR
568a49c409
daca2.py: PEP8 fixes
2013-10-12 18:50:54 +03:00
Daniel Marjamäki
d30ebe268a
daca2: refactorings and fix of indentlevel that might have screwed up the script.
2013-10-12 16:49:37 +02:00
Daniel Marjamäki
0b9d0e48cf
daca2: added script that runs cppcheck on debian source code
2013-10-12 14:02:03 +02:00
Daniel Marjamäki
ee325008c4
dmake: install htmlreport
2013-10-12 12:26:27 +02:00
Daniel Marjamäki
3f1e074846
reduce: Fixed compiler error (MathLib::longToString() doesnt exist)
2013-10-06 19:07:47 +02:00
Robert Reif
bf8a786265
reduce: add more settings from cppcheck cli
2013-08-19 06:06:53 +02:00
Daniel Marjamäki
982f63d58e
reduce: update #include order
2013-08-18 18:19:24 +02:00
Robert Reif
784a8a1fcb
reduce: refactorings
2013-08-18 18:15:46 +02:00
Daniel Marjamäki
6a369f0841
astyle formatting
2013-08-18 09:01:26 +02:00
Robert Reif
865ff82425
reduce: add -D
2013-08-18 07:24:30 +02:00
Daniel Marjamäki
99cb04306d
reduce: allow -I command flag to specify include paths
2013-08-17 19:46:56 +02:00
Daniel Marjamäki
d41e0f82cf
reduce: Fix compilation problems
2013-08-17 19:20:47 +02:00
Daniel Marjamäki
cb73a1d0c7
tools/times: modified script to allow longer dataseries
2013-07-21 13:16:34 +02:00
Daniel Marjamäki
8ba14edb51
dmake: fixed lib.pri for gui (tinyxml)
2013-07-08 21:56:09 +02:00
Daniel Marjamäki
d96fb577cd
CLI: Added --environment flag
2013-07-02 07:18:19 +02:00
Andreas Bießmann
90a6472af9
dmake: fix for local includes
...
When building cppcheck we may pull in conflicting global definitions before
local ones, rearrange include order to prevent this.
Signed-off-by: Andreas Bießmann <andreas@biessmann.de>
2013-06-03 19:45:29 +02:00
Daniel Marjamki
45cf562212
matchcompiler: fixed find(simple)match compiler problems.
2013-06-02 13:57:25 +02:00
Daniel Marjamki
35b13da3a5
matchcompiler: find(simple)match doesn't work well. the compiled functions are not static => the wrong function can be executed. this is a quick fix that just disable find(simple)match compiled patterns.
2013-06-02 12:41:34 +02:00
Frank Zingsheim
650027a07a
Fixed #4797 (matchcompiler.py cannot handle overloaded findsimplematch and findmatch)
2013-05-15 18:18:58 +02:00
Daniel Marjamäki
e1fd003e2d
makefile: make it possible to turn on matchcompiler verifications with 'VERIFY=1'
2013-05-15 13:04:19 +02:00
XhmikosR
ae73466f97
Python scripts: PEP8 fixes
2013-03-03 09:59:16 +01:00
PKEuS
2ad38c8701
Updated matchcompiler to support %cop%
2013-03-01 02:52:44 -08:00
Daniel Marjamäki
c07576e07e
dmake: generating unix makefile from windows. Ticket: #3887
...
When you commit the generated Makefile from windows you must probably be careful about the line endings.
2013-02-24 03:30:58 -08:00
Stefan Naewe
26ddf07366
tools/dmake: update with MINGW32 support
...
Signed-off-by: Stefan Naewe <stefan.naewe@googlemail.com>
2013-02-08 12:15:41 +01:00
Daniel Marjamäki
0a88a136ca
Reduce: Added --cfg command
2013-01-27 03:20:24 +01:00
Daniel Marjamäki
89b54cb2c9
reduce: reduce structs/enums/etc better
2013-01-20 09:05:50 +01:00
Daniel Marjamäki
d87d54339d
reduce: fix output
2013-01-17 21:02:52 +01:00
Thomas Jarosch
4fb6751d08
MC: Enable compiled matches for Token::findmatch() and Token::findsimplematch()
...
Speed is exactly the same and the --verify mode of the
match compiler ensured everything works as expected.
2013-01-16 21:50:32 +01:00
Thomas Jarosch
9f9c654621
MC: Implement verify mode for compiled Token::findmatch patterns
2013-01-14 11:18:33 +01:00
Thomas Jarosch
63e18d6b1c
MC: Split _replaceTokenFindMatch() into two small functions
2013-01-14 11:06:59 +01:00
Thomas Jarosch
017783a77e
MC: Save one indentation level
2013-01-14 11:06:55 +01:00
Thomas Jarosch
06a7d301e2
MC: Switch to assertEqual function from python's unittest
2013-01-14 11:06:40 +01:00
Thomas Jarosch
3bb8237cdc
MC: Turn MatchCompiler tests into python unit test
2013-01-14 11:06:33 +01:00
Thomas Jarosch
c0044122f4
Add self test for _replaceTokenFindMatch
2013-01-12 15:28:38 +01:00
Thomas Jarosch
ff9e864a07
Add self test for replaceTokenMatch
2013-01-12 15:28:38 +01:00
Thomas Jarosch
a7377f180a
Quote output of _assertEquals()
...
It's easier to detect trailing spaces this way.
2013-01-12 15:28:38 +01:00
Thomas Jarosch
4038d4b562
Place main code into own function
2013-01-12 15:28:38 +01:00
Thomas Jarosch
fdcfbd5ff9
Add missing copyright header
2013-01-10 11:10:45 +01:00
Thomas Jarosch
6bd7463c54
Add local copy of argparse module to support python 2.6 / python 3.0
2013-01-09 21:30:53 +01:00
Edoardo Prezioso
6236e1dc38
Token::Match: removed harmless special code for initial '!!foo' patterns.
2013-01-09 20:13:33 +01:00
Thomas Jarosch
de36324d62
Match compiler: Add cmdline handling
2013-01-09 19:41:03 +01:00
Thomas Jarosch
97e1e50139
Match compiler: Workaround broken code generation for "!!foo" patterns
...
This is just meant for the upcoming release.
2013-01-09 19:25:24 +01:00
Thomas Jarosch
e1be85a552
Match compiler: Be more user friendly on how to invoke it
2013-01-09 19:22:40 +01:00
Thomas Jarosch
ade0b741b7
Match compiler: Create 'build' directory if needed
2013-01-09 19:15:13 +01:00
Thomas Jarosch
982503f457
Match compiler: Workaround broken optimizations in verify mode
...
If the match compiler uses the 'verify' mode and we
compile with -O2, some tests comparing the on-the-fly-parser
to the compiled match fail.
Small functions are inlined by the -O2 compile flag.
If we disable function inlining and still compile with -O2,
everything is back to normal.
gdb didn't show anything useful during the mismatch
since the needed variables are optimized out. Once
we start printing them, the problem vanishes, too.
-> Can only be diagnosed at the x86 assembly level.
The problem vanished by switching the invocation order
of Token::Match() and the compiled match, so just swap them.
Also add commented out helper code
to better diagnose mismatch problems.
2013-01-09 19:03:42 +01:00
Daniel Marjamäki
9ecc74e845
tools/reduce: change default timeout to 5 minutes no matter if --hang is used or not.
2013-01-08 07:10:14 +01:00
Thomas Jarosch
9970414a2f
Match compiler: Implement 'verify mode' for Token::Match
...
Verify mode runs the same ::Match pattern on a token
using the on-the-fly parser and the compiled match parser.
The result is compared and we abort on mismatch.
Already detected an error in our test suite, needs investigation.
2013-01-07 22:27:57 +01:00
Thomas Jarosch
9b51d81e99
Match compiler: Split _replaceTokenMatch() into two small functions
2013-01-07 21:39:49 +01:00
Daniel Marjamäki
7657b84c44
reduce: rename stdout to print to avoid name clash
2013-01-07 18:45:29 +01:00
Thomas Jarosch
3918948dd5
Match compiler: Aggregate match functions with the same pattern / function call signature
...
Reduces the number of generated functions from 2290 to 1916.
2013-01-04 04:47:01 +01:00
Thomas Jarosch
5f09cb2e4d
Match compiler: Store matchFunctions and matchStrs in the class instead of passing it around
2013-01-04 03:56:21 +01:00
Thomas Jarosch
542c6e82d3
Match compiler: Cosmetic changes after running pylint
2013-01-04 03:44:04 +01:00
Thomas Jarosch
71a236b3df
Match compiler: Turn code into a python class
...
This will make passing around internal states a lot easier
2013-01-04 03:38:40 +01:00
Thomas Jarosch
f9c752667e
Match compiler: Inline generated pattern match code for Token::findmatch
...
Verified the output in build/ stayed the same
if Token::findmatch support is disabled.
2013-01-04 03:13:22 +01:00
Thomas Jarosch
4b386986fc
Match compiler: Check varid on first use like Token::Match does
2013-01-04 01:14:52 +01:00
Thomas Jarosch
5d5efdf99f
Match compiler: Add support for Token::findmatch
...
(still disabled for performance reasons)
2013-01-04 01:01:57 +01:00
Thomas Jarosch
241d23ba8e
Remove reduce tool in 'make clean'
2013-01-03 21:59:28 +01:00
Thomas Jarosch
4a2d2f78ef
tools/reduce: Remove unused variable detected by cppcheck
...
[reduce.cpp:475]: (style) Variable 'decl' is assigned a value that is never used.
2013-01-03 21:38:47 +01:00
Thomas Jarosch
7417144784
Match compiler: Compile Token::findsimplematch() calls
...
Disabled for now as it runs slowers than before.
2013-01-03 19:33:37 +01:00
Daniel Marjamäki
76c8887f5f
tools/reduce: remove cast in function parameter
2013-01-03 18:28:20 +01:00
Daniel Marjamäki
16612d010d
tools/reduce: improvements to make it possible to reduce code that hangs
2013-01-03 15:22:54 +01:00
Daniel Marjamäki
ed803b302b
reduce: remove more stuff. unneeded #define , unneeded constructors, unneeded #ifndef etc
2013-01-02 17:08:04 +01:00
Daniel Marjamäki
1f3628a2fe
reduce: remove more code blocks
2013-01-02 15:37:41 +01:00
Daniel Marjamäki
28d5ad9d21
dmake: fixed reduce compilation
2013-01-02 15:36:17 +01:00
Daniel Marjamäki
7f2d9cb7eb
dmake: fixed compilation of reduce
2013-01-02 14:43:31 +01:00