Daniel Marjamäki
|
819862ddcb
|
Fix compiler errors
|
2017-10-20 17:38:15 +02:00 |
orbitcowboy
|
db787369b9
|
#8243: Changed order of includes. Moved mathlib include at first place.
|
2017-10-14 16:30:10 +02:00 |
Ayaz Salikhov
|
b8cd7dbb5c
|
Use nullptr instead of 0 or NULL (#936)
|
2017-08-09 20:00:26 +02:00 |
Daniel Marjamäki
|
bf5040e3d6
|
Fixed #7701 (ValueFlow: handle 64-bit unsigned values )
|
2017-07-22 12:19:46 +02:00 |
Ayaz Salikhov
|
28aa939d69
|
iwyu - include what you use
|
2017-05-27 04:33:47 +02:00 |
Alexander Mai
|
c1cdcc158f
|
Run astyle. Fix some Doxygen issues
|
2017-05-06 11:57:02 +02:00 |
amai2012
|
3e11eb9dca
|
#8050 cppcheckError: 0xFFFFFFul -> 16777215ULU. Don't add a suffix 'U' if there is already a suffix present.
|
2017-05-05 14:47:58 +02:00 |
Daniel Marjamäki
|
1faca91c1d
|
Added 'endsWith' utility function. This will make compiling the democlient easier.
|
2017-04-01 18:14:18 +02:00 |
Daniel Marjamäki
|
633ed23c0d
|
Fix Cppcheck warnings about mismatching function argument names
|
2017-04-01 09:31:27 +02:00 |
Daniel Marjamäki
|
adc659f58b
|
Fixed #7897 (MathLib::toDoubleValue: Does not handle character literal)
|
2017-02-25 21:58:09 +01:00 |
PKEuS
|
d665641a76
|
Refactorizations:
- use std::string::pop_back() and std::string::back()
- pass argument as const std::string&
- Moved iterator into for loop head
|
2016-12-05 14:50:01 +01:00 |
Daniel Marjamäki
|
1b7766c7bd
|
astyle formatting
|
2016-10-16 19:03:14 +02:00 |
Daniel Marjamäki
|
90ed7634b8
|
MathLib: fix for octal char literal '\200'
|
2016-10-16 13:42:20 +02:00 |
Daniel Marjamäki
|
fee0e4edfa
|
Fixed #7177 (MathLib: Does not handle '\xF6' properly)
|
2016-08-28 11:37:05 +02:00 |
PKEuS
|
fc1603eb9b
|
MathLib, ValueType: Support integer suffix "i64"
|
2016-07-26 13:19:53 +02:00 |
Simon Martin
|
40eacb19b1
|
Ticket #7565: Handle numbers with several C++14 integer separators.
|
2016-07-01 23:24:28 +02:00 |
Daniel Marjamäki
|
bab4f61bb2
|
astyle formatting
[ci skip]
|
2016-06-05 14:14:28 +02:00 |
Simon Martin
|
3095f47a7b
|
Ticket #7137: Properly detect C++14 digit separators. (#802)
Add an optional extended description…
|
2016-06-04 22:55:55 +02:00 |
Simon Martin
|
ce05d23bb7
|
No need to use std::min() in normalizeCharacterLiteral.
|
2016-05-22 22:59:32 +02:00 |
Simon Martin
|
eb1b3db04a
|
Address comments in PR#794 and alternative fix for ticket #7500.
|
2016-05-20 22:52:43 +02:00 |
Alexander Mai
|
4f77a2b044
|
#7500 buffer overflow: encodeMultiChar lib/mathlib.cpp:343. Improve errors handling
|
2016-05-17 20:43:32 +02:00 |
Daniel Marjamäki
|
7fffc09b17
|
MathLib: Add #include for VS2013
|
2016-05-16 20:30:53 +02:00 |
Daniel Marjamäki
|
bce15b1ade
|
CheckClass: refactored the code, use symboldatabase instead of name comparisons when possible, fixed a FN.
|
2016-05-16 09:36:26 +02:00 |
Simon Martin
|
3af30e728c
|
Ticket #7452: Properly interpret escape sequences in character literals.
|
2016-05-15 15:48:24 +02:00 |
Daniel Marjamäki
|
ac8341e3de
|
keep type suffixes after constant folding using bit operations
|
2016-03-21 21:20:02 +01:00 |
Robert Reif
|
100c4276ea
|
Fixed #7424 (value type: wrong sign)
|
2016-03-18 10:30:57 +01:00 |
Lauri Nurmi
|
996c9244d8
|
Update copyright year to 2007-2016.
|
2016-01-01 15:34:45 +02:00 |
PKEuS
|
37572dc109
|
Small refactorizations:
- Improved formatting of unhandled-char-constant message (Side-effect: fixes #7206)
- Replace nr="-1" by nr="any" in windows.cfg
|
2015-12-10 15:47:46 +01:00 |
Alexander Mai
|
5ddc5c0798
|
#7187 internal error; unhandled char constant \e. Support \e char literal support by clang,gcc,tcc
|
2015-12-05 18:53:03 +01:00 |
PKEuS
|
e8522c7883
|
Small refactorizations:
- #include cleanup
- Use std::array instead of std::vector
- Do not create a stringstream to concatenate 4 strings
- Use std::cout instead of printf
|
2015-11-29 10:56:44 +01:00 |
Alexander Mai
|
78489f4293
|
MathLib::characterLiteralToLongNumber can encode unicode char literals, though it's incompatible to gcc/clang
|
2015-11-28 16:37:26 +01:00 |
Alexander Mai
|
c6ec5ca734
|
Fix MathLib::characterLiteralToLongNumber for LP64 again.
|
2015-11-27 21:43:51 +01:00 |
Alexander Mai
|
d4749c3377
|
Fix excessive left shift of signed integer and some doxygen errors
|
2015-11-27 19:32:28 +01:00 |
Alexander Mai
|
a7ab5ecf08
|
Fix some compiler in MathLib::characterLiteralToLongNumber + some small refactoring
|
2015-11-23 20:41:21 +01:00 |
Alexander Mai
|
63b7700660
|
Use clang/gcc-conforming encoding of multicharacter literals
|
2015-11-22 14:20:36 +01:00 |
Alexander Mai
|
9ca6704c81
|
#7162 Support multicharacter char literals.
|
2015-11-22 13:31:31 +01:00 |
Alexander Mai
|
517922feb6
|
MathLib::characterLiteralToLongNumber now reports more specific error messages for unsupported unicode literals (see #7162)
|
2015-11-22 07:38:38 +01:00 |
Alexander Mai
|
714579401f
|
#7160 Internal error: Unhandled char constant '\1'. Correct MathLib::toLongNumber. Create new utility function MathLib::characterLiteralToLongNumber
|
2015-11-21 22:35:58 +01:00 |
Daniel Marjamäki
|
79a70c1277
|
MathLib::toLongNumber: Better handling of '\x12' and '\000' char constants
|
2015-11-20 18:57:48 +01:00 |
Daniel Marjamäki
|
52b5446d86
|
Improve handling of various standard character constants
|
2015-11-20 10:23:38 +01:00 |
Daniel Marjamäki
|
86957214ae
|
Remove redundant comparisons
|
2015-11-20 10:11:58 +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 |
PKEuS
|
4f565ba90f
|
Fixed crashs on garbage code (#7082)
|
2015-11-02 21:30:28 +01: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 |
Alexander Mai
|
7c48bf3ca5
|
MathLib::isFloat now detects C99 hexadecimal float literals. MathLib::isDecimalFloat was added for C++ and pre-C99 compatibility.
|
2015-07-26 19:21:53 +02:00 |
Alexander Mai
|
bbec54db8e
|
Implement MathLib::isFloatHex to detect C99 hexadecimal floating pointer literals. Rename MathLib::isHex to MathLib::isIntHex
|
2015-07-26 08:06:56 +02:00 |
Daniel Marjamäki
|
b821e996e1
|
MathLib: Add TEST_MATHLIB_VALUE that is used to test MathLib::value
|
2015-07-15 17:36:41 +02:00 |
Daniel Marjamäki
|
177fd9c79d
|
MathLib: make isinf and isnan more portable
|
2015-07-14 20:48:08 +02:00 |
Daniel Marjamäki
|
ac04541d56
|
MathLib: Add value class. this will allow more type-independant value handling.
|
2015-07-10 20:36:38 +02:00 |
Daniel Marjamäki
|
f36f1e8952
|
MathLib: Minor tweaks. Use toDoubleNumber instead of std::atof. Only use clang workaround with clang.
|
2015-07-10 18:34:28 +02:00 |
Alexander Mai
|
b6858622eb
|
#6779 internal error: division overflow. Previous error handling (see #4520) was too restrictive.
|
2015-06-20 23:15:35 +02:00 |
Martin Ettl
|
9b14ab15eb
|
MathLib::intsuffix: Added support for LLU and LU suffixes.
|
2015-06-16 19:12:18 +02:00 |
Daniel Marjamäki
|
2cc23b4bb3
|
MathLib: Try to keep type suffix in constant calculations
|
2015-06-15 19:01:56 +02:00 |
Simon Martin
|
e5745d7d4a
|
Restore build with libc++ and revert PR#228 and PR#562.
|
2015-04-12 20:29:49 +02:00 |
orbitcowboy
|
8596794ce7
|
MathLib:mod: Declared local variable as const. No functional change.
|
2015-04-07 17:21:28 +02:00 |
Daniel Marjamäki
|
ff11ba9847
|
Updated copyright year to 2015
|
2015-01-03 12:14:58 +01:00 |
Alexander Mai
|
d4e59065df
|
Fix some (clang) compiler warnings
|
2014-11-20 20:49:05 +01:00 |
orbitcowboy
|
4a2a4474c9
|
Fixed #6281: MathLib: Long integer suffix i64 is not supported.
|
2014-11-20 10:23:09 +01:00 |
Robert Reif
|
b7c9187539
|
Fixed #6280 (MathLib: binary literals are integers)
|
2014-11-19 06:43:52 +01:00 |
Robert Reif
|
7c4a137e14
|
Fixed #6274 (MathLib::isFloat doesn't recognize long double literal suffix L or l)
|
2014-11-17 06:53:32 +01:00 |
orbitcowboy
|
b9a9f51fe0
|
MathLib: Added test for isDec() and removed not required state.
|
2014-11-14 04:29:35 +01:00 |
Alexander Mai
|
4d5b463613
|
Fix clang compiler warning in mathlib.cpp and repair test case for #5895
|
2014-06-07 13:16:02 +02:00 |
orbitcowboy
|
8fe163285f
|
MathLib: Added missing testcase for incdec.
|
2014-06-04 08:41:30 +02:00 |
orbitcowboy
|
60e80b6fb1
|
Fixed #5885 - fsanitize=undefined: signed integer overflow: 2147483647 + 1 cannot be represented in type 'int' in lib/tokenize.cpp.
|
2014-05-29 18:25:01 +02:00 |
Martin Ettl
|
af369b4925
|
astyle run [ci skip]
|
2014-05-16 23:01:21 +02:00 |
amai2012
|
6f31ce334d
|
#5875 Fix 'lib/mathlib.cpp:559:43: runtime error: division by zero'. Several fixes to MathLib::divide(): avoid division by zero, handle various representation of 0 value, use 'nan.' instead of '-nan.0'
|
2014-05-31 18:25:23 +02:00 |
orbitcowboy
|
ee5cd91d51
|
MathLib: removed duplicated #include
|
2014-05-22 17:53:13 +02:00 |
Alexander Mai
|
cccddc20bf
|
#5843 MathLib::toLongNumber()/MathLib::toULongNumber() now use min/max values for bigint/biguint type in case the number to converted cannot be converted properly
|
2014-05-21 21:36:17 +02:00 |
PKEuS
|
ab4f58a146
|
Partially reverted 1317063b21 . enum class is not part of the common subset of supported C++11 functions of the compilers supported by cppcheck. (Fixes #5745)
|
2014-04-30 21:06:01 +02:00 |
Alexander Mai
|
1317063b21
|
Fix some more (clang++) compiler warnings
|
2014-04-26 20:44:21 +02:00 |
Alexander Mai
|
b5c580a59e
|
Fix some clang warnings - most related to semantic doxygen errors
|
2014-04-26 16:17:26 +02:00 |
orbitcowboy
|
3d0217b69e
|
Implemented a slower but shorter version of MathLib::isNullValue() as suggested by PKeuS. Removed not needed test cases. Improved doxygen documentation for MathLib::IsNullValue().
|
2014-04-14 05:27:38 +02:00 |
Daniel Marjamäki
|
28751c8ad0
|
astyle formatting
[ci skip]
|
2014-04-15 06:32:25 +02:00 |
Alexander Mai
|
ac24635056
|
Convert MathLib::toLongNumber() from template member function to toLongNumber() and toULongNumber() to avoid various problems compiling with Visual Studio
|
2014-04-14 20:30:38 +02:00 |
Martin Ettl
|
82092e412a
|
MathLib::isNullValue(): Fixed bug in detecting zero values. Improved test coverage of MathLib::IsNullValue().
|
2014-04-12 02:14:50 +02:00 |
Alexander Mai
|
718e42f5ca
|
Fix some clang warnings about type conversions
|
2014-04-11 23:35:53 +02:00 |
Alexander Mai
|
6da6508913
|
Extract new function MathLib::isDec() our of isInt()
|
2014-04-11 22:15:25 +02:00 |
orbitcowboy
|
6be53376f4
|
MathLib:IsNullValue(): removed commented out code.
|
2014-04-11 01:28:16 +02:00 |
orbitcowboy
|
9c08885caf
|
MathLib:IsNullValue(): using a Finite State Machine to determine a string value contains a numeric NULL value. The NULL value can be Integer, Binary, Hex, Octal. The corresponding unit test cases are also included.
|
2014-04-11 01:27:05 +02:00 |
Philipp Kloke
|
1fafc7f4dc
|
Refactorization: use MathLib::isNullValue in CheckOther::checkMemsetInvalid2ndParam(); Fixed it to support also float literals like "0.f"
|
2014-04-11 14:17:36 +02:00 |
Alexander Mai
|
ab2f8bfba3
|
Tidy up MathLib::isInt() - using a state machine approach
|
2014-04-10 22:46:55 +02:00 |
Alexander Mai
|
cba1879fee
|
Fixed #5571 (Clean up MathLib::isInt())
|
2014-03-16 11:55:44 +01:00 |
Daniel Marjamäki
|
8c7cf090c4
|
Merge pull request #261 from orbitcowboy/master
MathLib:isHex(): fix detection of missing suffixes (U,L).
|
2014-03-14 13:00:35 +01:00 |
orbitcowboy
|
74d10cd6d9
|
Added function MathLib::isValidSuffix()
|
2014-03-14 11:46:41 +01:00 |
orbitcowboy
|
71ee625aab
|
MathLib: replaced isHexDigit function by isxdigit.
|
2014-03-14 09:33:20 +01:00 |
Daniel Marjamäki
|
618c26f6bf
|
Merge pull request #260 from orbitcowboy/master
MathLib::isOct() fix missing detection of U and L suffix combinations an...
|
2014-03-12 05:30:35 +01:00 |
orbitcowboy
|
ed793793db
|
MathLib:isHex(): fix detection of missing suffixes (U,L).
|
2014-03-11 20:02:04 +01:00 |
Daniel Marjamäki
|
af0cf9bbc1
|
Merge pull request #258 from orbitcowboy/master
MathLib::isBin(): fix missing detection of U and L suffix combinations. ...
|
2014-03-11 06:36:31 +01:00 |
orbitcowboy
|
5b4ece4f9c
|
MathLib::isBin(): fix missing detection of U and L suffix combinations. Added missing test cases.
|
2014-03-10 17:23:07 +01:00 |
Martin Ettl
|
0360840753
|
MathLib::isOct() fix missing detection of U and L suffix combinations and unittests.
|
2014-03-09 21:14:14 +01:00 |
Alexander Mai
|
a02bbfa47e
|
Fixed #5492 (Fix small bug in MathLib::isFloat())
|
2014-02-27 16:08:49 +01:00 |
Daniel Marjamäki
|
dea4107245
|
Fix Cppcheck warning
|
2014-02-26 06:38:48 +01:00 |
Alexander Mai
|
0747b55485
|
Fixed #5304 (Wrong simplification of numbers like 001E+07 to 1.0)
|
2014-02-24 18:52:31 +01:00 |
Alexander Mai
|
82a2279425
|
Fixed #5304 (Wrong simplification of numbers like 001E+07 to 1.0)
|
2014-02-20 16:56:49 +01:00 |
Daniel Marjamäki
|
fd3a8a2a18
|
Update copyright
|
2014-02-15 07:45:39 +01:00 |
Martin Ettl
|
babbee4e73
|
Fixed typos in comments, no functional changes.
|
2013-11-09 16:07:28 +01:00 |
Daniel Marjamäki
|
8ff412fcee
|
Fixed #5142 (False positive with floating-point special cases in conditions)
|
2013-11-04 11:56:43 +01:00 |
Daniel Marjamäki
|
769b4617c3
|
Fixed #5142 (False positive with floating-point special cases in conditions)
|
2013-11-02 22:58:23 +01:00 |
Martin Ettl
|
00987eb120
|
MathLib: improved constness of local variables. No functional change.
|
2013-09-29 15:49:02 +02:00 |