PKEuS
|
37aec52399
|
Simplify complex/_Complex types (#6939)
|
2015-08-26 13:13:45 +02:00 |
PKEuS
|
c8c59aa92b
|
Removed Tokenizer::simplifyIfSameInnerCondition(). It covered only very simple patterns and is unlikely to have an impact on real-world code.
|
2015-08-26 13:04:00 +02:00 |
Simon Martin
|
6fb19b02d0
|
Properly differentiate arrays of pointers and pointers to arrays.
|
2015-08-25 21:19:19 +02:00 |
amai2012
|
873861df4a
|
#6948 cash: daca: mgetty (garbage code)
|
2015-08-21 10:40:43 +02:00 |
PKEuS
|
8d926d7328
|
Moved some simple WinAPI/MFC-specific simplifications to windows.cfg
|
2015-08-20 15:59:59 +02:00 |
PKEuS
|
ebae879cf9
|
Some small refactorizations to tokenize.cpp
|
2015-08-19 20:06:49 +02:00 |
PKEuS
|
11be2f79a6
|
Refactorization: Removed some redundant conditions and an unused syntax check from tokenize.cpp
|
2015-08-19 19:29:49 +02:00 |
PKEuS
|
a720153e1e
|
Refactorization: Removed redundant code for syntax error handling in templatesimplifier.cpp and symboldatabase.cpp
|
2015-08-19 19:29:48 +02:00 |
PKEuS
|
4e2d56242c
|
Refactorization: Removed unreachable and duplicate code in tokenize.cpp
|
2015-08-19 19:29:48 +02:00 |
Dmitry-Me
|
a8135d9bd8
|
Merge overlapping patterns
|
2015-08-17 17:25:19 +03:00 |
PKEuS
|
ab8afec3eb
|
Refactorizations:
- Avoid unnecessary loop iterations
- Avoid unnecessary condition checking
- Reduced code duplication in symboldatabase.cpp
|
2015-08-16 14:23:07 +02:00 |
PKEuS
|
1627b19dd6
|
Refactorizations:
- Call std::string::find() with char instead of char* where possible
- Avoid string copying
- Optimized several Token::tokAt/strAt calls
|
2015-08-16 10:33:51 +02: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 |
PKEuS
|
3cf67014ad
|
Fixed parsing of template in enum
|
2015-08-14 11:08:03 +02:00 |
Matthias Krüger
|
72b00b35f8
|
Tokenizer::simplifyNamespaceStd() check condition only once instead of potentially 3 times
|
2015-08-10 23:33:58 +02:00 |
Alexander Mai
|
a5aba110a4
|
Replace Tokenizer::simplifyBuiltinExpect by a suitable addition to gnu.cfg
|
2015-08-10 20:21:30 +02:00 |
Matthias Krüger
|
4e4a1cfe3a
|
Tokenizer::combineOperators: prevent duplicate checking of same condition
|
2015-08-09 14:35:17 +02:00 |
Alexander Mai
|
95658030bc
|
Avoid UB in Tokenizer::printDebugOutput in case of empty tokenlist (see #6913)
|
2015-08-09 07:49:34 +02:00 |
Daniel Marjamäki
|
72706cd0b8
|
Fixed #6868 (Tokenizer: wrong simplification of the unlikely keyword)
|
2015-08-08 12:49:42 +02:00 |
Frank Zingsheim
|
7021cb2c6b
|
Fixed #6284 (Token::Match called with varid 0. Constants)
|
2015-08-02 09:11:51 +02:00 |
Martin Ettl
|
b7ea311123
|
Running astyle. No functional changes.
|
2015-08-01 12:31:16 +02:00 |
amai2012
|
b182edddda
|
#6909 segmentation fault (invalid code) in Tokenizer::simplifyEnum
|
2015-08-01 12:24:22 +02:00 |
Alexander Mai
|
acf050793e
|
#6907 segmentation fault (invalid code) in Tokenizer::simplifyTokenList1
|
2015-08-01 07:39:56 +02:00 |
Alexander Mai
|
4400f2ac85
|
#6900 segmentation fault (invalid code) in CheckStl::runSimplifiedChecks.
|
2015-07-31 20:24:06 +02:00 |
Matthias Krüger
|
83ee640977
|
Tokenizer::syntaxError: put the character that we have an invalid number of into singlequotes instead of parentheses.
|
2015-07-31 15:28:59 +02:00 |
amai2012
|
1f43550688
|
#6880, 6881 Crashes on invalid code. Fix null pointer access
|
2015-07-28 18:41:50 +02:00 |
Daniel Marjamäki
|
a17f4d0a2d
|
CLI: Added --debug-normal option that will show --debug output after 1st simplifications. This output is relevant for the 'normal' checkers.
|
2015-07-28 12:46:32 +02:00 |
Daniel Marjamäki
|
05a21d45eb
|
Fixed #6670 (Analysis failed when there are {} in LHS in compound assignment)
|
2015-07-27 13:44:35 +02:00 |
PKEuS
|
229d488048
|
Fixed build
|
2015-07-23 13:15:58 +02:00 |
Frank Zingsheim
|
1c12378ce9
|
Simplified pattern in Tokenizer::simplifyExternC() (#5544)
|
2015-07-23 13:04:25 +02:00 |
Frank Zingsheim
|
6485339d66
|
Support lambdas in "else if" simplification (#6860)
|
2015-07-23 09:41:35 +02:00 |
PKEuS
|
258e3b9dc3
|
Refactorization: Renamed Token::isOperator() to Token::isOperatorKeyword() to avoid confusion with Token::isOp(), use Token::isOperatorKeyword() in setVarId().
|
2015-07-22 13:57:51 +02:00 |
Robert Reif
|
4e693f1620
|
Fixed #6827
|
2015-07-22 13:57:51 +02:00 |
Daniel Marjamäki
|
f9d22f70db
|
Removed simplifyIfNot simplification (#6072)
|
2015-07-21 20:56:47 +02:00 |
Daniel Marjamäki
|
1b8252181d
|
Tokenizer: Removed Tokenizer::simplifyIfNotNull (#6072)
|
2015-07-21 17:58:44 +02:00 |
amai2012
|
e8ac4d8e87
|
#6847 segmentation fault (invalid code) in Token::multiCompare. Fix and simple refactoring in Tokenizer
|
2015-07-21 13:40:50 +02:00 |
PKEuS
|
149d11d9ad
|
Improved handling of inline assembly (#6813):
- Add ; after asm {} block if required
- Fixed inline suppressions
|
2015-07-20 23:09:54 +02:00 |
PKEuS
|
c987a99ac8
|
Fixed hang on garbage code (#6824)
|
2015-07-20 22:33:32 +02:00 |
Frank Zingsheim
|
8416be4d9d
|
#6345 Tokenizer::simplifyTypedef() adds redundant 'typename' to declaration
|
2015-07-20 07:55:22 +02:00 |
Alexander Mai
|
8b97f04de4
|
Try to address some Coverity issues. Add TODO testcase for #5783. Introduce TODO_ASSERT macro.
|
2015-07-19 15:03:35 +02:00 |
Simon Martin
|
1f73d71542
|
Ticket #5776: Simplify (&a)->b into a.b
|
2015-07-17 23:27:35 +02:00 |
Alexander Mai
|
d45aa6170b
|
Minor refactoring in Tokenizer: Optimize for C code and use nullptr instead of 0
|
2015-07-16 00:29:48 +02:00 |
Simon Martin
|
2d8993319c
|
Ticket #6810: Avoid infinite loop upon invalid typed enum declaration.
|
2015-07-15 21:39:15 +02:00 |
Antti Tuppurainen
|
a75872a15e
|
Fix uniform init in out-of-class ctor-initer
|
2015-07-14 18:09:07 +02:00 |
Daniel Marjamäki
|
81d9c90890
|
Fixed Cppcheck warning caused by a redundant null pointer test.
|
2015-07-08 21:04:38 +02:00 |
Simon Martin
|
7bfb1fb545
|
Simplify the code handling C++0x typed enumerations.
|
2015-07-06 23:37:16 +02:00 |
amai2012
|
4a1695c879
|
#6807 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. #6808 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Throw InternalError on garbage code
|
2015-07-01 16:31:49 +02:00 |
Alexander Mai
|
2c73518e29
|
Fix platform-dependent test result, formatting and crash in whole program analysis
|
2015-06-28 17:54:48 +02:00 |
amai2012
|
4a47b8b3ae
|
Refactoring: Better distinguish between C and C++ in a few checks.
|
2015-06-28 16:49:16 +02:00 |
Alexander Mai
|
c047fae53b
|
#6790 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Fix null pointer access
|
2015-06-25 07:47:40 +02:00 |
Alexander Mai
|
8946fcd960
|
#6772 segmentation fault (invalid code) in Tokenizer::setVarId. Add another validate() call to Tokenizer::simplifyTokenList1. Small refactoring to Tokenizer: mark many methods as private.
|
2015-06-24 20:47:04 +02:00 |
Alexander Mai
|
6ba9c21fb9
|
#6786 segmentation fault (invalid code) in Tokenizer::simplifyRedundantParentheses. Small refactoring for Tokenizer::simplifyTokenList2() including additional calls to validate() - which prevents heap corruption on invalid code
|
2015-06-24 20:22:28 +02:00 |
amai2012
|
9fedc9bd74
|
#6788 segmentation fault (invalid code) in Tokenizer::simplifyVarDecl. Fix null pointer access
|
2015-06-24 16:54:23 +02:00 |
Alexander Mai
|
f806d945a1
|
Refactoring: Allow TemplateSimplifier to throw InternalErrors by itself.
|
2015-06-23 20:53:57 +02:00 |
amai2012
|
69f91ac187
|
#6785 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Avoid null pointer access
|
2015-06-23 17:59:01 +02:00 |
Alexander Mai
|
07bcc7157b
|
#6784 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Avoid null pointer access
|
2015-06-22 20:43:26 +02:00 |
orbitcowboy
|
06e818f89d
|
Running astyle, no functional change.
|
2015-06-17 09:09:23 +02:00 |
amai2012
|
919fcb38f5
|
Refactoring Tokenizer
Create Tokenizer::simplifyAsm2(), skip simplifyExternC() in C code and
simplifyBorland() on non-Microsoft or C code
|
2015-06-16 20:53:11 +02:00 |
Martin Ettl
|
9b14ab15eb
|
MathLib::intsuffix: Added support for LLU and LU suffixes.
|
2015-06-16 19:12:18 +02:00 |
amai2012
|
227b48212e
|
Skip some C++-specific simplifications in Tokenizer
|
2015-06-15 19:42:20 +02:00 |
Alexander Mai
|
d704e97203
|
Fix (potential) multi-threading issues by moving static local vars (non-POD-type) to file scope
|
2015-06-10 21:14:17 +02:00 |
Daniel Marjamäki
|
3986c0dc64
|
fixed cppcheck warnings
|
2015-06-10 19:07:04 +02:00 |
Alexander Mai
|
c18461b173
|
#6761 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Fix crash.
|
2015-06-07 13:35:51 +02:00 |
Alexander Mai
|
b6264e4a00
|
#6759 segmentation fault (invalid code) in Tokenizer::simplifyTokenList2. #6760 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Fix crashes
|
2015-06-06 13:11:32 +02:00 |
Daniel Marjamäki
|
d208e763df
|
astyle formatting
|
2015-06-05 14:34:53 +02:00 |
amai
|
5fd9dd04fa
|
#6757 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Fix crash
|
2015-06-04 19:00:35 +02:00 |
Alexander Mai
|
5f4902c613
|
6755 segmentation fault (invalid code) in Token::isAssignmentOp. #6756 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Fix two crashes.
|
2015-06-04 17:46:52 +02:00 |
amai2012
|
87bf09c0ae
|
#6751 segmentation fault (invalid code) in Tokenizer::simplifyTypedef.
|
2015-06-03 11:39:30 +02:00 |
amai2012
|
ed5a4127e8
|
#6749 segmentation fault (invalid code) in Tokenizer::copyTokens. #6750 segmentation fault (invalid code) in Tokenizer::simplifyTypedef.
|
2015-06-03 10:39:19 +02:00 |
amai2012
|
d36c84553f
|
#6748 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Throw error from now (member-function) Tokenizer::processFunc
|
2015-06-03 08:59:38 +02:00 |
Alexander Mai
|
d86ac9e3ed
|
#6747 segmentation fault (invalid code) in Token::isAttributeConstructor
|
2015-06-02 22:26:17 +02:00 |
Alexander Mai
|
09f2cff519
|
#6746 segmentation fault (invalid code) in Tokenizer::simplifyTypedef
|
2015-06-02 21:52:08 +02:00 |
Alexander Mai
|
6e1b5a0a53
|
#6744 segmentation fault (invalid code) in Tokenizer::simplifyPointerToStandardType. #6745 segmentation fault (invalid code) in Tokenizer::simplifyTypedef
|
2015-06-02 21:20:41 +02:00 |
Alexander Mai
|
f348c8eebe
|
#6741 segmentation fault (invalid code) in Tokenizer::simplifyTypedef.
|
2015-06-02 20:09:12 +02:00 |
Alexander Mai
|
7fc9930b38
|
#6740 segmentation fault (invalid code) in Tokenizer::simplifyFunctionPointers. Throw syntaxError instead
|
2015-06-02 19:48:20 +02:00 |
Alexander Mai
|
a3bdd90df5
|
#6739 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Fix segfault in the specified method
|
2015-06-02 19:40:20 +02:00 |
Alexander Mai
|
be3690920a
|
#6738 Avoid segfault on garbage code in Tokenizer::simplifyTypedef()
|
2015-06-02 19:07:26 +02:00 |
Martin Ettl
|
0a148a9433
|
Running astyle, no functional changes.
|
2015-06-01 22:09:56 +02:00 |
amai2012
|
4b2fb4b76c
|
#6735, #6735 Fix segfault on garbage code
Throw syntax error instead
|
2015-06-01 21:47:06 +02:00 |
Alexander Mai
|
fb2bd978ad
|
#6732 segmentation fault (invalid code) in Tokenizer::simplifyEmptyNamespaces. Add testcase, segfault seems to have been fixed by previous commit. Run astyle
|
2015-06-01 13:46:13 +02:00 |
amai2012
|
b81e82d462
|
#6733 segmentation fault (invalid code) in Tokenizer::simplifyAddBracesPair
Avoid access to NULL-token by throwing an InternalError
|
2015-06-01 13:27:32 +02:00 |
Frank Zingsheim
|
6857dbe864
|
#6729 Simplification reference to constants.
|
2015-06-01 10:00:03 +02:00 |
Simon Martin
|
519bd7007a
|
Ticket #6588: Properly detect whether the condition in a ternary operator is constant on C input.
|
2015-05-31 22:40:13 +02:00 |
Simon Martin
|
85b47636dc
|
Simplify known variableswhen they are at the end of a statement.
|
2015-05-30 23:34:50 +02:00 |
Simon Martin
|
c73876b3a8
|
Removed useless space in the declaration for Tokenizer::Simplifyfunctionpointers.
|
2015-05-30 21:00:41 +02:00 |
Alexander Mai
|
ddc80246c2
|
#6724 segmentation fault (invalid code) Token::isAttributeConstructor. Local fix to avoid access to NULL-token
|
2015-05-30 19:15:53 +02:00 |
Alexander Mai
|
4050d56169
|
#6722 segmentation fault (invalid code) in Tokenizer::simplifyTypedef
|
2015-05-29 21:44:00 +02:00 |
Martin Ettl
|
9236ea4a20
|
Running astyle, no functional changes.
|
2015-05-29 19:15:41 +02:00 |
amai2012
|
e41beb4f8d
|
Fix #6718 and #6719 (crashes on garbage code).
Local fixes avoiding access to NULL-token. Also minor correction to
TemplateSimplifier::hasComplicatedSyntaxErrorsInTemplates()
|
2015-05-29 18:34:00 +02:00 |
Alexander Mai
|
098391ee32
|
#6715 segmentation fault (invalid code) in TemplateSimplifier::hasComplicatedSyntaxErrorsInTemplates. Harden TemplateSimplifier::hasComplicatedSyntaxErrorsInTemplates()
|
2015-05-28 21:38:20 +02:00 |
amai2012
|
f1c4cc6d55
|
Merge pull request #598 from simartin/useless_str_check
Removed unnecessary string comparison in Tokenizer::simplifyKnownVariablesSimplify
|
2015-05-25 19:13:33 +02:00 |
Simon Martin
|
c58fab07d6
|
Removed unnecessary string comparison in Tokenizer::simplifyKnownVariablesSimplify.
|
2015-05-24 13:13:46 +02:00 |
Alexander Mai
|
7f15873759
|
Refactoring in tokenize.cpp: Fix cppcheck warning, add some const, fix typo from previous refactoring
|
2015-05-24 11:43:46 +02:00 |
Alexander Mai
|
7002f9df35
|
Merge branch 'master' of https://github.com/danmar/cppcheck
|
2015-05-24 09:43:52 +02:00 |
Alexander Mai
|
394160184a
|
Refactoring: Replace complex if/else cascade by search in a container. Remove redundant plain arrays (in favour of container)
|
2015-05-24 09:43:17 +02:00 |
Simon Martin
|
26f244e638
|
Ticket #6704: Tighten pattern skipping base class declarations and fix crash upon garbage code.
|
2015-05-24 08:16:34 +02:00 |
Alexander Mai
|
7416d6add9
|
Another fix for handling of final/override specifiers in Tokenizer::simplifyKeyword() including a testcase. Ran astyle
|
2015-05-23 20:51:15 +02:00 |
Alexander Mai
|
f0bc300198
|
#6510 False positive performance warning for std::list::size(). Fix this and other similar false positives. Refactoring of Variable::isStlType(), use fail-safe std::set instead of plain array. Run astyle
|
2015-05-17 20:02:41 +02:00 |
amai2012
|
20842fb1fc
|
#6690 override and final qualifiers plus less than operator results in a syntax error
Tokenizer::simplifyKeyword() is now able to handle all combinations out
of const|final|override
|
2015-05-17 13:02:13 +02:00 |
PKEuS
|
3ce4e68ca6
|
Refactorization: Make use of do-loops to avoid redundant Token::Match() calls
|
2015-05-13 13:40:40 +02:00 |