Daniel Marjamäki
|
ac8341e3de
|
keep type suffixes after constant folding using bit operations
|
2016-03-21 21:20:02 +01:00 |
Daniel Marjamäki
|
072120d19f
|
TemplateSimplifier::templateParameters: Handling r-value arguments
|
2016-03-18 11:09:41 +01:00 |
Daniel Marjamäki
|
6c324013e7
|
Use MAXTIME in templatesimplifier
|
2016-02-12 12:05:32 +01:00 |
Daniel Marjamäki
|
07f3930923
|
report progress in TemplateSimplifier::simplifyTemplateInstantiations, as far as I see it can be very slow
|
2016-02-05 07:59:29 +01:00 |
Daniel Marjamäki
|
f3f9ea2d09
|
TemplateSimplifier: One more fix for #3130. Restored max recursion count to 100 and improve pattern for reference template instantiations instead.
|
2016-01-30 11:22:44 +01:00 |
Daniel Marjamäki
|
f116de678e
|
Fixed #3130 (Tokenizer: Doesn't instantiate recursive template correctly)
|
2016-01-30 10:33:25 +01:00 |
Daniel Marjamäki
|
8e79e5c1d3
|
Fixed #7147 (TemplateSimplifier: specialized template class with inheritance)
|
2016-01-11 18:45:12 +01:00 |
Daniel Marjamäki
|
036306d7c2
|
Refactoring Tokenizer::startOfExecutableScope(). Improve and reuse Tokenizer::isFunctionHead().
|
2016-01-03 22:52:24 +01:00 |
Lauri Nurmi
|
996c9244d8
|
Update copyright year to 2007-2016.
|
2016-01-01 15:34:45 +02:00 |
Alexander Mai
|
5b6758b03b
|
Add some debugging code (inspired by #6021)
|
2015-12-27 17:38:15 +01:00 |
PKEuS
|
32e2fb2f78
|
Refactorization: Prefer Token::simpleMatch over Token::Match also for non-const patterns.
|
2015-12-03 13:04:55 +01:00 |
Daniel Marjamäki
|
5fabe66ff7
|
simplifyCalculations: better handling of && and || in conditions (#4931)
|
2015-11-28 15:00:41 +01:00 |
PKEuS
|
93c02ce826
|
Fixed compiler error introduced in previous commit and several MSVC warnings
|
2015-11-28 10:49:08 +01:00 |
Daniel Marjamäki
|
8689693d6c
|
Fix Travis
|
2015-11-28 09:26:44 +01:00 |
Daniel Marjamäki
|
c0da6c1541
|
simplifyCalculations: handle '(4%1<<1&4!=1)' better. must combine '!' '=' before constant folding. fixed the operator precedence for comparison operators. (#4931)
|
2015-11-28 09:04:22 +01:00 |
Daniel Marjamäki
|
1bf547c716
|
Fixed #4931 (Wrong calculation for '2|0*0&2>>1+0%2*1')
|
2015-11-27 15:02:49 +01:00 |
Daniel Marjamäki
|
1977a18a1e
|
simplifyNumericCalculations: Don't fold negative constants in shift/bitmask calculation. Behaviour is not well defined.
|
2015-11-27 14:16:49 +01:00 |
Daniel Marjamäki
|
2737f63f71
|
Wrong calculation of constants (simplifying: +,<<,% operations)
|
2015-11-25 16:46:39 +01:00 |
Daniel Marjamäki
|
0022ce8075
|
Refactor handling of char constants
|
2015-11-20 10:10:38 +01:00 |
Daniel Marjamäki
|
0f9d90d2be
|
Changed Copyrights. Removed my name.
|
2015-11-18 20:04:50 +01:00 |
Alexander Mai
|
3b1d849476
|
Correct template syntax check which got introduced by an attempt fix #6865. Disable test for #6865, adjust some modified tests and add new regression tests
|
2015-10-19 20:03:33 +02:00 |
Alexander Mai
|
7112725d38
|
Simplify code (repair travis build)
|
2015-10-18 16:04:49 +02:00 |
Alexander Mai
|
21efa992e3
|
#6865 TemplateSimplifier::expandTemplate doesn't terminate on invalid code. Add some another syntax check on templates to avoid problems later on.
|
2015-10-18 15:47:37 +02:00 |
Daniel Marjamäki
|
ec87b09d89
|
Fixed #7056 (iscast does not handle '(ulong)~0' properly, Tokenizer::simplifyCalculations wrongly simplifies '(ulong)~0' to 'ulong~0')
|
2015-10-17 18:58:13 +02:00 |
Martin Ettl
|
8936985c5c
|
#7001: Fixed templatesimplifier.cpp: Remove double include.
|
2015-09-18 12:20:41 +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
|
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
|
ee4a5843bb
|
Some small refactorizations
|
2015-08-15 19:46:31 +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 |
Simon Martin
|
af1b0cfddf
|
Ticket #6835: Don't get confused by parentheses while detecting template parameter default values.
|
2015-07-17 21:30:34 +02:00 |
Alexander Mai
|
e75662aaf1
|
#6792 segmentation fault (invalid code) in TemplateSimplifier::templateParameters. Avoid null pointer access
|
2015-06-25 20:48:05 +02:00 |
Alexander Mai
|
f806d945a1
|
Refactoring: Allow TemplateSimplifier to throw InternalErrors by itself.
|
2015-06-23 20:53:57 +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 |
Alexander Mai
|
6f96634759
|
#6276 clang: -fsanitize=integer warnings. Fix unwanted integer overflow in TemplateSimplifier::useDefaultArgumentValues() and Tokenizer::simplifyQtSignalsSlots()
|
2015-05-03 15:21:58 +02:00 |
Frank Zingsheim
|
4ceed51bfb
|
Fixed #6607 (Crash triggered by TemplateSimplifier::useDefaultArgumentValues)
|
2015-05-01 17:13:02 +02:00 |
PKEuS
|
b6709294a8
|
Fixed ...... in template instantiations (similar to constconst from #6604)
|
2015-04-13 17:03:06 +02:00 |
Matthias Krüger
|
42f0955e3f
|
Move more setting checks out of loops and use const bools instead. Reorder a few related checks.
Follow up to eedcb6abcb .
|
2015-04-10 14:31:19 +02:00 |
Simon Martin
|
0f7f08644c
|
Show template instantiation and not definition location in template instantiation debug message.
|
2015-04-05 14:54:24 +02:00 |
Daniel Marjamäki
|
aacd9b9f6b
|
Fixed #6586 (Tokenizer: '>>' is wrongly tokenized as '> >' - if (n1 < len>>1))
|
2015-04-03 20:25:49 +02:00 |
PKEuS
|
0d37c4df04
|
Fixed three unique crashs on garbage code (#6613).
Removed redundant copy of string in templatesimplifier.cpp
|
2015-04-01 12:43:24 +02:00 |
PKEuS
|
19f770e41b
|
Fixed #6604 - don't create template instanciations with "const const const const..." patterns.
|
2015-03-22 11:20:47 +01:00 |
Daniel Marjamäki
|
a200e5b32f
|
Merge pull request #551 from simartin/ticket_4335
Ticket #4335: Properly detect and handle template class specialisations
|
2015-03-15 07:59:11 +01:00 |
Simon Martin
|
520314f9a0
|
Ticket #4335: Properly detect and handle template class specializations.
|
2015-03-15 00:28:33 +01:00 |
Simon Martin
|
32a7a178e8
|
Code simplification now that ">>" is turned into "> >" when it closes template argument lists.
|
2015-03-14 23:02:10 +01:00 |
Simon Martin
|
4c916641cc
|
Ticket #6347: Fix use after delete when simplifying template instantiations.
|
2015-03-14 18:46:17 +01:00 |
Simon Martin
|
1d973b882d
|
Ticket #6567: Handle member functions in TemplateSimplifier::getTemplateNamePosition.
|
2015-03-07 21:52:12 +01:00 |
Daniel Marjamäki
|
925f077b8a
|
Fixed #6110 (TemplateSimplifier::simplifyCalculations: wrong simplification of 'if (VG_(strlen)(s)>=3)')
|
2015-03-02 16:27:00 +01:00 |
Simon Martin
|
c4c46be972
|
Revert fix for #6181, that caused #6354 and #6414.
|
2015-02-14 12:29:05 +01:00 |