Commit Graph

13722 Commits

Author SHA1 Message Date
Michael Tautschnig 6dc6ea99cd Avoid unncessary signed/unsigned conversion 2018-07-08 20:49:59 +01:00
Michael Tautschnig 34404f0db9 Set little_endian in the same way that boolbv_byte_extract already does
Ensure that a valid id is set via PRECONDITION checks.
2018-07-08 19:25:14 +01:00
Kurt Degiorgio 4a8dc966a2 JBMC: removed camel-casing from function identifiers 2018-07-08 19:11:03 +01:00
Kurt Degiorgio 9059be7ec5 JBMC: CProver.getCurrentThreadID:()I conversion fix
The symbol table was being passed by-value instead of by-reference to
'instrument_getCurrentThreadID', causing an assertion violation in symex
due to missing symbols. This function is responsible for converting
calls to 'CProver.getCurrentThreadID:()I' into the appropriate codet.

This bug was not detected by existing regression tests as in typical
scenarios the aforementioned function does not add new symbols.
2018-07-08 18:15:23 +01:00
Michael Tautschnig d393d1ceb6
Merge pull request #2435 from tautschnig/vs-ranged-for
Change index variable name, simplify code
2018-07-08 18:05:58 +01:00
Michael Tautschnig be7159a572
Merge pull request #2425 from tautschnig/vs-virtual
Add missing virtual destructor
2018-07-08 17:56:46 +01:00
Michael Tautschnig 44cc03367a Change index variable name, simplify code
The variable name "i" was already used in the context, triggering a warning with
Visual Studio.
2018-07-08 17:06:06 +01:00
Michael Tautschnig 0c9658f988 Add missing virtual destructor 2018-07-08 16:43:22 +01:00
Daniel Kroening c6f92318e9
Merge pull request #2553 from tautschnig/always-inline-partial-revert
Partial revert of #1898 (always_inline support, second attempt)
2018-07-08 08:12:36 +01:00
Daniel Kroening fa94bc09b8
Merge pull request #2531 from tautschnig/debian4
Fix copy&paste error in C library
2018-07-07 17:30:01 +01:00
Daniel Kroening 41863e775e
Merge pull request #2539 from tautschnig/vs-unsigned-constant
Mark integer constants as unsigned when lhs is unsigned
2018-07-07 17:29:14 +01:00
Peter Schrammel f1afbff02b Remove unnecessary PLATFORM_DIRS 2018-07-07 17:23:05 +01:00
Peter Schrammel 0c75b47288 Run strings-smoke-tests and janalyzer tests
There were typos in the test directory names,
2018-07-07 17:23:05 +01:00
Daniel Kroening 0acae08146
Merge pull request #2535 from tautschnig/debian7
Use architecture-specific compiler flags to configure bit width during preprocessing
2018-07-07 17:14:59 +01:00
Daniel Kroening 35ddf0bfce
Merge pull request #2533 from tautschnig/debian5
utf8 to utf16 conversion must use native endianness
2018-07-07 17:12:36 +01:00
Daniel Kroening 580f539bc2
Merge pull request #2534 from tautschnig/debian6
kfreebsd also uses ELF, and hybrid binaries are thus supported
2018-07-07 17:07:49 +01:00
Michael Tautschnig b73a9e35ac
Merge pull request #2420 from tautschnig/vs-invariant
Fix invariant: value must be strictly positive
2018-07-07 15:13:22 +01:00
Daniel Kroening 9b087dcb37
Merge pull request #2550 from tautschnig/vs-return
Use type-consistent unsigned value for unreachable return statement
2018-07-07 14:53:20 +01:00
Michael Tautschnig dc352708e1
Merge pull request #2547 from tautschnig/vs-dummy-init
Add dummy initialisation to avoid Visual Studio warning
2018-07-07 14:51:56 +01:00
Daniel Kroening ff88c161bb
Merge pull request #2554 from tautschnig/ld-options
goto-ld: accept (but do not process) further ld options
2018-07-07 14:50:55 +01:00
Michael Tautschnig 3209628ab4
Merge pull request #2450 from tautschnig/c++-name-resolution
Name resolution may require further template instantiation
2018-07-07 14:47:53 +01:00
Michael Tautschnig 61a6acd787 Name resolution may require further template instantiation 2018-07-07 13:30:50 +01:00
Michael Tautschnig 0f15d4765a goto-ld: accept (but do not process) further ld options 2018-07-07 11:49:03 +00:00
Michael Tautschnig 4c6cfc03ef
Merge pull request #2448 from tautschnig/c++-delayed-body
Fix delayed method body conversion for templates
2018-07-07 12:37:00 +01:00
Michael Tautschnig c46d46da10
Merge pull request #2439 from tautschnig/vs-pointer
Remove unused and inconsistent pointer_object_has_type
2018-07-07 12:33:48 +01:00
Michael Tautschnig 7e4dd05a42
Merge pull request #2440 from tautschnig/vs-list
Remove unused parameter from list_calls_and_arguments
2018-07-07 12:32:40 +01:00
Michael Tautschnig 1f237ff700
Merge pull request #2464 from tautschnig/vs-unused1
Remove unused parameters message_handler, ns
2018-07-07 12:31:38 +01:00
Michael Tautschnig 7be54b861f
Merge pull request #2544 from tautschnig/vs-value-set
Remove unused parameter from value_set_fivrt::flatten_rec
2018-07-07 12:30:01 +01:00
Daniel Kroening 7f373c8303
Merge pull request #2549 from tautschnig/vs-unsigned-option
Extract unsigned value from options
2018-07-07 12:25:20 +01:00
Daniel Kroening b17fefae57
Merge pull request #2540 from tautschnig/vs-explicit-cast
Explicit type cast to avoid signed/unsigned warning
2018-07-07 12:23:58 +01:00
Michael Tautschnig 425db26d63
Merge pull request #2530 from tautschnig/debian3
Fix tests that are only correct on little-endian architectures
2018-07-07 11:42:43 +01:00
Michael Tautschnig 2598141ca8 Mark integer constants as unsigned when lhs is unsigned 2018-07-07 11:42:21 +01:00
Michael Tautschnig 0da9766f10
Merge pull request #2538 from tautschnig/vs-use-to_ulong
Use to_ulong instead of the deprecated integer2ulong
2018-07-07 11:34:12 +01:00
Michael Tautschnig e501317b53 Additional regression tests for always_inline
The previous attempt of implementing support for always_inline broke each of
those in different ways.
2018-07-07 10:02:57 +00:00
Michael Tautschnig 17a50c5712 Revert "Apply symbol replacement in type_arg members"
This reverts commit d1f617b7de.
2018-07-07 09:56:19 +00:00
Michael Tautschnig 016ad92b3d Revert "Fully interpret __attribute__((always_inline))"
This partly reverts commit 9c93f59593.

The regression test stays in place, but is now marked as KNOWNBUG.
2018-07-07 09:56:19 +00:00
Michael Tautschnig ee9444f9be
Merge pull request #2532 from tautschnig/debian2
Regression test should succeed even if char is an unsigned type
2018-07-07 10:44:35 +01:00
Michael Tautschnig c8725cb3d3
Merge pull request #2536 from tautschnig/debian8
Test only works with simplification enabled
2018-07-07 10:39:54 +01:00
Chris Smowton d6565ec795
Merge pull request #2537 from tautschnig/vs-non-deprecated
Use non-deprecated to_integer(constant_expr)
2018-07-07 10:27:46 +01:00
Michael Tautschnig 16e6a997b0 Use type-consistent unsigned value for unreachable return statement 2018-07-07 10:23:38 +01:00
Michael Tautschnig a746a2c5cd Extract unsigned value from options 2018-07-07 10:23:11 +01:00
Michael Tautschnig 681ec2234a Add dummy initialisation to avoid Visual Studio warning 2018-07-07 10:22:50 +01:00
Michael Tautschnig c789088d48 Remove unused parameter from value_set_fivrt::flatten_rec 2018-07-07 09:59:56 +01:00
Michael Tautschnig 4d8aa4595b Use std::string(N, ' ') instead of static locals
Visual Studio complains about them not being thread-safe. The complaint is
pointless here, but also there is no need for those static locals.
2018-07-07 09:58:52 +01:00
Michael Tautschnig 18faa5a854 String refinement: remove unused parameters 2018-07-07 09:58:26 +01:00
Michael Tautschnig 96a70142f3 Explicit type cast to avoid signed/unsigned warning 2018-07-07 09:50:45 +01:00
Michael Tautschnig 2aa6a2f08c Use non-deprecated to_integer(constant_expr) 2018-07-07 09:46:41 +01:00
Michael Tautschnig 13f83d5602 Use to_ulong instead of the deprecated integer2ulong 2018-07-07 09:45:59 +01:00
Michael Tautschnig 26803f7ee4 Test only works with simplification enabled
... and simplification is only performed for byte_extract_little_endian.
2018-07-07 07:08:52 +01:00
Michael Tautschnig be5f2ffa79 Use architecture-specific compiler flags to configure bit width during preprocessing 2018-07-07 07:08:33 +01:00