Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Float constant propagation is unsound #350

Open
peterschrammel opened this issue Dec 11, 2016 · 6 comments
Open

Float constant propagation is unsound #350

peterschrammel opened this issue Dec 11, 2016 · 6 comments

Comments

@peterschrammel
Copy link
Member

It does not seem to take into account the rounding mode.
Patch #349 turns it off until this gets fixed.

The problem can be reproduced as follows on this benchmark
https://raw.githubusercontent.com/sosy-lab/sv-benchmarks/master/c/floats-cbmc-regression/float-rounding1_true-unreach-call.i

goto-cc/goto-cc sv-benchmarks/c/floats-cbmc-regression/float-rounding1_true-unreach-call.i -o test.o
goto-instrument/goto-instrument test.o test.o-cp --constant-propagator --inline --add-library
cbmc/cbmc test.o-cp

** Results:
[roundingTest.assertion.1] : SUCCESS
[roundingTest.assertion.2] : FAILURE
[roundingTest.assertion.3] : SUCCESS
[roundingTest.assertion.4] : SUCCESS

vs (after turning it off)

** Results:
[roundingTest.assertion.1] : SUCCESS
[roundingTest.assertion.2] : SUCCESS
[roundingTest.assertion.3] : SUCCESS
[roundingTest.assertion.4] : SUCCESS

@martin-cs
Copy link
Collaborator

martin-cs commented Dec 12, 2016 via email

@kroening
Copy link
Member

This should be fixed in the constant propagator, not in the simplifier.

The simplifier works on a first-order fragment, where there is no such thing as a rounding mode.

@peterschrammel
Copy link
Member Author

Got it.

@peterschrammel peterschrammel changed the title Simplifier's float constant folding is unsound Float constant propagation is unsound Dec 14, 2016
@martin-cs
Copy link
Collaborator

martin-cs commented Dec 19, 2016 via email

NathanJPhillips pushed a commit to NathanJPhillips/cbmc that referenced this issue Mar 26, 2018
…p-duplicate-callsites-in-lazy-methods

SEC-266: Speed up resolution of virtual callsites in lazy loading
smowton pushed a commit to smowton/cbmc that referenced this issue May 9, 2018
cc8db21 Merge pull request diffblue#367 from diffblue/allredj/optional-test-runner-timeout
54f278e Merge pull request diffblue#355 from diffblue/allredj/string-exceptions
80e17d8 Add tests for StringBuffer exceptions
50fe786 Add tests for StringBuilder exceptions
403bb47 Add tests for String exceptions
5f20fa8 Add exceptions to String models
f06c5dd Merge pull request diffblue#353 from diffblue/allredj/SecureRandom
2357fb1 TestRunner: Set global process timeout to 500 secs
a1e9bc0 TestRunner: Add optional timeout
d2d0e1e TestRunner: Prevent deadlock on output streams
8c2f6ec Merge pull request diffblue#363 from diffblue/antonia/public-static-fields
b0d1038 Allow custom javadoc tags in all places in models
91b51cb Add new restriction on static fields to readme
5d5237b Update 'Writing models' section in readme
cea6f14 Model for SecureRandom
53b572b Force SecureRandom mock in TestRunner
1c50faa Empty Random and SecureRandom models
7653be1 Import Random and SecureRandom from JDK
79d7e50 Update File javadoc to take bugs into account
0bd4ffb Add tests for File fields
5f714c8 Prepare File.spec for new test format
419bb11 Enable public static fields in File and String
ac47de9 Merge pull request diffblue#361 from diffblue/antonia/public-System-fields
31c934c Add tests for public static fields of System
1489356 Prepare existing System tests for new format
2b4f4a8 Re-enable out, in and err fields in System model
c8bd0eb Merge pull request diffblue#362 from diffblue/jeannie/DisableTestsDueToTG2098
2b183fa Updates javadocs for java.util.Properties for TG-2098.
da777b5 Renames spec files to remove spaces and make consistent.
7005075 Disables tests in java.util.Properties due to TG-2098
5c9652b Merge pull request diffblue#360 from diffblue/antonia/gcloud-comment
bbfa9f9 Merge pull request diffblue#354 from diffblue/antonia/model-common-Date-methods
6ddfee0 Add ticket number to commented out gcloud line
c2f5bf5 Add @diffblue.mock java tag
8c032d8 Delete legacy Date tests
fa15801 Add tests for Date
1f7a722 Mock Date in TestRunner
cdd4037 Simple model for Date with constant timestamp
e0b859f Copy jdk version of Date
af0c931 Merge pull request diffblue#358 from diffblue/allredj/tmp-gcloud-fix
6c3baf8 Temporarily disable GCloud update
e188f92 Merge pull request diffblue#349 from diffblue/allredj/gauge-dump-mvn-error-to-stdout
d8f016b Gauge: Dump mvn error message into stdout
7137e47 Merge pull request diffblue#324 from diffblue/feature/TG-2020/deeptest-utils-update
216248a Updating runner to use the new deeptest-utils repo
0aeeac3 Merge pull request diffblue#352 from diffblue/allredj/buffered-writer-missing-null-check
67b76b1 Fix missing null check in BufferedWriter's nondet-init
b0a3882 Merge pull request diffblue#350 from diffblue/jeannie/DisableSometimesFailingHashtableTest
b8cf2df Disables tests that use nondet key/value for Hashtable due to TG-2098.
0714583 Adding a noop for Hashtable tests (no testing scope change).
459a3ce Merge pull request diffblue#337 from diffblue/jeannie/EnableHashtablePropertiesTests
5918596 Enables tests for Properties and Hashtable that require custom initialisers.
8c0b6ab Merge pull request diffblue#348 from diffblue/antonia/disable-TG-2098-tests
1ecfffe Merge pull request diffblue#347 from diffblue/allredj/lower-initial-capacity-bound
8b5e399 Disable test with varying running time
2e75972 Lower max initialCapacity to prevent JVM runtime failures
82cf0a8 Merge pull request diffblue#328 from diffblue/jeannie/Properties
85c5380 Merge pull request diffblue#346 from diffblue/jeannie/DisableFailingTestsDueToTG2356
df669a7 Adds tests for java.util.Properties model. TG-2067
9a840e5 Adds javadocs for java.util.Properties model; TG-2067.
b1c480c Adds model for java.util.Properties. TG-2067
546c4b8 Marks all methods as notModelled(). TG-2067
15f7a4f Makes initial commit for Properties.java. TG-2067
453919a Updates javadocs for java.util.Arrays.
c054c05 Merge pull request diffblue#345 from diffblue/antonia/mockito-powermock-versions
3b37fe6 Disabling tests that fail due to TG-2356 / TG-1404.
ce082f6 Update remaining pom files into new format
57dcf33 Use compatible Mockito and Powermock versions
226fa3e Merge pull request diffblue#340 from diffblue/romain/QA_HashSet_iterator
c38cac1 Level1 tests for iterators on HashSets
ebd5043 Merge pull request diffblue#344 from diffblue/jeannie/DisableHashSetTests
5b79203 Disables failing tests due to TG-2327.
525a731 Merge pull request diffblue#343 from diffblue/romain/fix-test-clone-arraylist
673792f Deactivate test with HashSet of ArrayList
aa1ca7e Merge pull request diffblue#339 from diffblue/jeannie/FixCustomEqualsHashMap
acfc29b Merge pull request diffblue#331 from diffblue/romain/regression/TG-1245
7f7d3ff Merge pull request diffblue#335 from diffblue/romain/QA_HashSet_clone
5c9cd0f Disables HashMap test regarding TG-2315.
b751a09 Fixes HashMap test regarding TG-2018.
12336a7 Level 1 tests for HashSet.clone
19a38e8 Regression test for TG-1245 (Object.getClass)
992437b Merge pull request diffblue#341 from diffblue/romain/update-class-files
38be638 Correction of a test
6bfc2b2 Forgotten class file
18d1cc0 Merge pull request diffblue#319 from diffblue/romain/QA-HashSet
6ba37d1 Merge pull request diffblue#338 from diffblue/bugfix/TG1877-Bugfix-regressiontest
1d596b2 Merge pull request diffblue#327 from diffblue/jeannie/Hashtable
f682e28 Tag long test of HashSet
080b6aa Remove tests duplicating L1Constructor_Collection
89643ba Level 1 test - HashSet constructor and class tests
9f83291 Remove old tests from ArrayList.spec
3822552 Add tests for TG-1877 to the new bug test suite
8a4e6a8 Adds tests for Hashtable. TG-2176
5c3f51d Merge pull request diffblue#326 from diffblue/allredj/Update-test-header-in-TestRunner
72a9f72 Adds model for Hashtable. TG-2176
d56fbbd Marks all methods as notModelled(). TG-2176
4f0a4ae Make initial commit for Hashtable.java and Dictionary.java. TG-2176
3ab91b8 Merge pull request diffblue#336 from diffblue/antonia/disable-Write12-test
5a7e84a Update test headers according to Platform
27cf91b Move maven configs to master-pom.xml
9907cc2 Merge pull request diffblue#332 from diffblue/feature/TG-2020/centralise-artifact-name
910a6a6 Tag ByteArrayOutputStream.Write12 as 'long'
23dde95 Updating POM file to use property in the master-pom
92b1dca Adding a master POM to specify all dependencies in one place
857bd3c Merge pull request diffblue#333 from diffblue/forejtv/remove-some-codeowners
a475e10 Merge pull request diffblue#330 from diffblue/allredj/enable-TG-656-tests
25ecdfe Remove forejtv and peterschrammel from code owners
1145774 Merge pull request diffblue#325 from diffblue/antonia/HashMap-inner-classes
326482a Clean up model methods spec file
fdf6041 [TG-656] Enable passing exception tests
b029c6f Delete old iterator tests
515f163 Add tests for HashMap$Values
edbe13f Add tests for HashMap$KeySet
7037882 Add tests for HashMap$EntrySet
4a77660 Override Values.remove() in model
0b8cac8 Improve running time of remove() methods
e57e731 Small fixes for null cases in HashMap$EntrySet
b411ef3 Merge pull request diffblue#322 from diffblue/antonia/method-body-tests
e808809 Merge pull request diffblue#323 from diffblue/romain/script-generalize-test
3f1eb24 Put method body tests into new format
e90f611 Update powermock dependencies in new pom.xml
ae460cd Create folder for method body Maven project
0ad8972 Move known-bug method body tests to end of file
b71f824 Move method body tests into separate file
af9f9a5 Merge pull request diffblue#311 from diffblue/allredj/Testrunner-message-on-missing-method
0a70f78 Script specializing method to different types
7f5d25b Improve TestRunner failure messages
4b7c200 Merge pull request diffblue#315 from diffblue/justin/alTestTidyup
9d005ba Addressing review comments progress 2
7fc3602 Merge pull request diffblue#318 from diffblue/allredj/QA-HashMap
4bcc63f Add tests in new format
4c74354 Add constraints on constructors args
f623a6a Merge pull request diffblue#321 from diffblue/allredj/add-constraints-on-capacity
0aa1cde Add constraints on constructors args
85da460 Merge pull request diffblue#320 from diffblue/antonia/prevent-Travis-debug-mode-crashes
c01c883 Addressing review comments progress 1
f965eae Prevent Travis build crashes with set +e
2f5c657 Add and refactor ArrayList tests into new format
a144089 Merge pull request diffblue#317 from diffblue/antonia/disable-ArrayList-test-TG-2098
44b865e Disable ArrayList test affected by TG-2098
950b3cb Merge pull request diffblue#316 from diffblue/antonia/enable-HashSet-tests
52c8aa4 Re-enable HashSet tests for new model/constructor
c1ac42a Merge pull request diffblue#308 from diffblue/antonia/model-HashSet-using-array-field
5f1422f Temporarily disable HashSet tests
898eceb Update limits on method calls in HashSet javadoc
0488845 Update HashSet.spec and limits on number of calls
6ba92bd Add test for HashSet.clone()
03013dc Add new HashSet test using Collection constructor
12b741e Model HashSet using an array instead of a HashMap
1e16b87 Merge pull request diffblue#314 from diffblue/lajw/array-list-arrays-tests
a333fd5 Add test for ArrayList of Arrays
bbbece5 Merge pull request diffblue#312 from diffblue/allredj/testrunner-lush-specs
ac16beb Merge pull request diffblue#306 from diffblue/doc/update-string-doc-TG-1724
75934df Merge pull request diffblue#313 from diffblue/allredj/travis-skip-long-future
019806d Skip long and future tests in Travis
c15a87e TestRunner: Add functionality to simplify specs
dfcfee7 Typo in StringBuilder.java comment
3a84d72 Correcting exception documentation in String.java
b573c7a Document support of String(Builder|Buffer) Classes
4756a96 Document missing exception throws in StringBuffer
40bed6f Document missing exception throws in String model
679d3a3 Merge pull request diffblue#307 from diffblue/jeannie/SystemArrayCopyQA
0fc655c Puts tests into QA format for System.arraycopy.
1adfb51 Merge pull request diffblue#310 from diffblue/jeannie/UpdateGitIgnore
0dc376d Removes tika from the .gitignore file because it was removed.
025d1b2 Removes reference to tika tests in .travis.yml file.
0bf6558 Reinstates .gitignore file after conflict during rebase.
f574057 Merge pull request diffblue#302 from diffblue/justin/newqascript
ecb6d38 Address PR review comments
eedf614 Add bash script that automates some QA workflows along with usage instructions
fc95298 Merge pull request diffblue#304 from diffblue/test/reactivate-tests-deactivated-by-PR301
f2f6786 Revert "Temporarily deactivate a test"
3b40452 Adds tests for StringBuilder append(Object). These are all currently disabled.
07af9e7 Print more useful output about discarded tests
270457d Print more output about line errors
29defd6 Group java.util import statements in TestRunner
16fa02c Temporarily deactivate a test
beab774 Correct test charAt_Fail
f9135af Replace charAt occurences by CProverString.charAt
30df36c Use CProverString to model String.substring
16172f9 Use CProverString.charAt to model String.charAt
68675f7 Add a CProverString class to use internal methods
453a262 Use goal coverage in TestRunner "lines" tests
dc77ad4 Add doc about travis error report on README
6728da0 Don't fail if report is not present
51f95f4 Enable test that was forgotten in PR 295
cea6c05 Add test for floating point precision of floats in custom initalizers
61fb30c Disables test that was randomly failing CI. TG-1891
d9e2c34 Adds more tests for HashMap with generics. TG-1401
a28c379 Adds documentation for HashMap.
646cdb0 Add tests for generics support of ArrayList
67f99ad Make imports and linebreaks consistent in tests
0678c26 Adds more tests for HashSet, namely for custom initialisers and addAll.
c3ee8d3 Adds addAll function separately. Adds documentation.
1fa7e5c Increase Maven compilation speed
66cb693 Factor test verification
2902bac Add error message when bad Maven dir is given
4317579 Compress and save html report on each ML build
b660af6 Adding CProver.notModelled calls in StringBuffer
30eaf5f Add diffblue tags to StringBuffer model
34b607b Comment on internal models of StringBuffer methods
2db6dc5 Moving "modelled internally" comments in methods
ea1b900 Adding diffblue tags to StringBuilder methods
3d64388 Marking notModelled StringBuilder methods
b8d5101 Put original String.contentEquals code in comment
d1d074d Correct model of toUpperCase(Locale)
87dea39 Correct comments for String.getChars
dcb3183 Add untested and todo tags to overview.html
c74e3de Add untested and todo tags to Readme
f90ce62 Comment unused imports
0769e20 Commenting out unused private methods
8366ca7 Marking not modelled String methods
772ce3d Adding tags to method documentations
88b4bda Add diffblue.todo and untested tags
16e957e Modify command to increase gauge plugin timeout
05c4d2e Update README.md
8e5e31a Convert "verify" tests to "generate" tests in specs
e3fe09d Add steps for test generation only
dabdc1a Refactor test verification steps
393eeba Add new Gauge step "Verify Tests in Maven project"
87eb11a Modify spec files for new mvn setup command
d8808f7 Modify Maven setup Gauge command
0da5a56 Typo in StringBuilder model
e02661c Reintroduce doc and code in StringBuffer model
94a8ebf Reintroduce doc and code in StringBuilder
d2b955b Comment about utility functions specific to models
93579f8 Reintroduce String Library documentation and code
54089f8 Enable test verification for BitSet
913ac12 Implements iterator() method for Arrays$ArrayList inner class (Arrays.asList). TG-1727
e08d030 Add test for TG-1786
1fac27d Workaround for bug TG-1786 in HashMap model
f9d5b91 Disables BitSet functional test for clear. TG-1775
38dc647 Disables functional test for ArrayList iterator. TG-1775
1a7e4ac Add verification of tests for BitSet
c1ff99f Model for BitSet
485339a Adding bitset from JDK
3092f08 Add test for handling user-defined type as an element of ArrayList
d93f9a6 verification of tests for DataInputStream
efc186b model for DataInputStream
527d82a JDK version of DataInputStream
811689f java.io.DataInput interface from JDK
8287a56 Marking FilterInputStream as supported, and adding cproverNondetInitialize
f63aa29 JDK version of FilterInputStream
43808d8 Keep all generated test files
a35c96e Add doc to Integer.java
fd68471 Add doc to Boolean.java
cba6e76 Implements model for Arrays.asList()
7d3c23e Marking methods as notModelled() in Arrays.java.
0b30e9b Initial commit for Arrays class file.
19f106a Disables test with Gauge issue on TravisCI.
c5b89f6 Enables tests for HashMap/HashSet as argument or return value.
b2bd7f0 Enables tests for HashMap/HashSet as argument or return value.
4468773 Activate ArrayList return value tests
c0d9006 Add ArrayList test that checks for side effects
aaec548 Comment out custom ArrayList model variable
838f304 Disable test that randomly fails on Travis
9a0f626 Add ArrayList and HashMap constraints for modCount
ee6f284 Add tests for return value check of ArrayList
85592d9 Check for "tested" instead of "covered"
92500be Use new platform parameter in TestRunner.java
3399a22 Modify test to match HashSet's NondetInitialize
ba008ab Add NondetInitialize constraint to Class model
52880ee Add constraint in HashSet to speed up test gen
37c789a Disable PutAllAndGet.test for HashMap
71fe858 Replace validate for HashSet
27e58e7 Replace validate for HashMap
6ed6a99 Replace validate for ArrayList and AbstractList
d38044c Replace validate for BufferedReader and related
a2e6cd5 Enable ByteArrayOutputStream's Write12.test
116d10f Replace validate for ByteArrayOutputStream
1c8e115 Enable PrintStream's Depth.test
269bb28 Replace validate for PrintStream + related classes
09fd660 Correct getPrimitiveClass for String
140e8fa Add tests for Class.toString
1bc6127 Correct Class.isPrimitive model
1fe9d8d Adding Java.lang.Math test scenarios. (diffblue#233)
93ec334 Skip a test until models-library#261 is merged
da5e93b Enables tests for HashSet that require Float and Double equals().
928b4e2 Adds tests for equals() in Double and Float models.
020e400 Implements method equals() in Double and Float models.
e7b4b1e Add new test for custom class without nested class
08affc8 Rename CustomClass to StaticClass, enable test
933a99a Update TestRunner paths
c1c7ed0 Remove redundant test ArrayListObjectToBoolean
ebaa2c2 Renamed tests to more informative filenames
80570cb Test for ArrayList argument possibly null
e5c0330 Additional tests for ArrayList as argument TG-1230
79e86ab Address TODOs that depend on custom initialisers
3492363 Improves constructor that takes collection. Adds iterator, toArray methods.
2ff7175 Adds tests for HashSet.
fcf24d4 Adds model for HashSet.
299851c Initial commit for HashSet model.
4beb116 Increase gauge plugin timeout
3c28f8b Mark test for constructor body as known-bug
97f5df3 Small fixes in HashMap
67f6479 Mark HashMap-as-argument tests as known-bug
69a2d78 Add CODEOWNERS
49f7149 Update README.md
56193b3 Split String test_data file
e61e374 Enable ArrayList tests
07c84df Run tests in verbose mode
e05c5de Add test for arraycopy with ArrayStoreException
9485f07 Add test for arraycopy on itself
0ba83ef Rename test methods as "test"
b761e19 Split tests: 1 method per java file
d4606d6 Add knownbug test for System.arraycopy of char[]
7955d75 Add System.arraycopy test specifications
965045e Add test and test class file for System.arraycopy
34aba57 Model for System.arraycopy
e7df5a9 TG-1394 Setup javadoc
29563a9 All add package information from original JDK
301c209 Correct line numbers covered in OSName2
080ee25 Activate tests for System.getProperty
fa5178b Updates .spec file for StringReaderRead4.java test failing CI.
ca216e0 Mark HashMapValues.test as known-bug
c8aaa80 Add tests for HashMap
acfb0d2 Model for HashMap
629a7e7 Copy map classes and interfaces from jdk
478f28f Test for NPE in getBytes with string argument
cd8ce59 Throw NullPointerException in getBytes of null
2be372a Use develop branch of test-gen in models-lib CI
1e43155 Adds readline() method to BufferedReader model.
15a3e8c Simplifies some code blocks. Adds back in synchronized blocks for Reader, StringReader, BufferedReader.
89122d7 StringReader working apart from next side affect check issue.
76e950b Adding in recompiled SimpleNPE.class.
c8abf9b Removing ambiguously-cased classes for SimpleNPE.class
ce7f8bb Small optimisation in constructor
a7263fe Small fix for an assume statement that wasn't used
da61bb4 Change Object[] to E[] so cbmc will recognise type
ee1c756 Remove documention of plug from Readme.md
2f442f2 Test for getBytes without arguments
be9139e Model for getBytes with no argument
14aa8fc Split Init.java test_data files into separate files
d2aa1c4 Rename specs/jdk to specs/java
22f4cbe Rename test_data/java-library to test_data/functional
2b95dd9 Rename test_data/init to test_data/maven
611e74b Update .gitignore files
ffd6fc9 Move init specs to their repsective location in specs/jdk
faf8c89 Move specs/util into specs/jdk
1526ee5 Remove plug
4571e79 Add a model for String initialization from array
3ce365e Style: delete trailing whitespaces
19c195c Model for String.toCharArray
1e435df Avoid Strings in ArrayList test
f747e81 Enable previously disabled assertion tests
899974e Add tests for most common ArrayList methods
35d05d8 Model for ArrayList and superclasses
7d1ac36 Copy list classes and interfaces from jdk
6259ae1 Mark as knownbug all tests with System.getProperty
87907c8 Update Gauge Maven plugin version in pom.xml
330f242 Add test for getBytes(Charset) with tag knownbug
c561bf3 Adding tests for getBytes
fedcb81 Style: untabify
babfff8 New version of getBytes without static members
d10408c Marking test for System.getProperty as knownbug
7712f7b Adding models for BufferedReader close() and constructors.
c653b66 Removes File(URI) constructor because there is no URI model. Reinstates NullPointerExceptions.
d5a9ad4 Updates models for BufferedReader as notModelled and Reader to model only first constructor.
d4b5231 Add tests for System.exit and System.getProperty
282c935 Model for System: exit and (partial) getProperty
def14b6 Copied System.java from jdk
7e450e7 Model for toString for subclasses of Throwable
d5edf8d Tests for Throwable.toString
071c234 Updated model for Throwable and Exception
4778547 Add line coverage functionality to TestRunner
c79fcbd Remove bad line in spec file
8675619 Adds models for Math.max and Math.min TG-836
4a75655 Initial commit for Math model
f9f94ea Removing tika tests from Travis.
08cc1ff Recompile all test java files as some of the class files were found to be out-of-date
f82552c Run tika tests in travis
f1633fd Tag functions with low coverage as known-bug
ae1f545 Modify TestRunner to detect incomplete coverage
e13ed94 Use CProver implementation in String.replace for Char Sequences
b723273 Java util arrays (diffblue#198)
4397193 Enable skipped tests for ByteArrayOutputStream
1f2b1ef Further simplified the File model so tests pass
882497f Updates models for four File constructors. TG-777
0d04723 Initial commit for File model.
6cdba8d Updated setup script
d401c31 Use cprover functions in long-to-string conversions
aad3499 Tests for new methods in PrintStream
dbf6758 Model for print(ln)(Object) and printf
77fb2ba Cleanup String.java model
51b3144 Update TestRunner.java to use new platform values
443a2cb Add tests for some methods in Character.java
8d9cc57 Model for Character.valueOf
4a4e5fc Add construction tests for ByteArrayOutputStream
f9a7a13 Add constraints to ByteArrayOutputStream
20d14e1 Linting
7ceb450 Adding Java.lang.Math Test scenarios. (diffblue#188)
1597eab Remove unused makefile
0632300 Small improvements to TestRunner
4cd5a90 Merge pull request diffblue#182 from diffblue/allredj/update-testrunner-options
dbaf047 Update Gauge TestRunner options
5c94e8d Skip tests that fail with new platform options
8eeea1e Disable an invalid test
a51c521 Merge pull request diffblue#183 from diffblue/antonia/printstream
893e47b Add tests for PrintStream.print(ln) functions
0d1ddc7 Added empty CharArrayWriter model with constraints
630decb Added empty StreamEncoder model with constraints
40c6cf8 Added constraints for Writer objects
9025e60 Update spec file for PrintStream
e91c9b3 Empty model for OutputStreamWriter with constraints
fb44939 Copy OutputStreamWriter.java from jdk
aa37293 Empty model for FilterOutputStream
ce0a697 Copy FilterOutputStream.java from jdk
4607f8a Empty model for BufferedWriter with constraints
6ac4952 Copy BufferedWriter.java from jdk
1dce5e9 Empty model for Writer
f25b1f0 Copy Writer.java from jdk
1ea396a Model PrintStream.print(ln)
b369b15 Copy PrintStream.java from jdk
6b17714 Merge pull request diffblue#186 from diffblue/lucas/fix/IntegerLong
480f37a Removed the toUnsignedString0 method from the Integer class
0df6efe Merge pull request diffblue#185 from diffblue/lucas/simplify/IntegerLong
0b038d3 The toString methods are implemented internally in cbmc
b10f24a Merge pull request diffblue#178 from diffblue/reuk/multiple-tests-in-class
eb87853 Allow several tests in generated_test class
7e4e92b Merge pull request diffblue#177 from diffblue/reuk/fix-travis
bc4ed2b Fix pip usages in Travis
8ed0590 Fix Travis build issues

git-subtree-dir: benchmarks/LIBRARIES/models
git-subtree-split: cc8db21ff99d5bddf4eb55004b32708129d25d53
smowton pushed a commit to smowton/cbmc that referenced this issue May 9, 2018
…p-duplicate-callsites-in-lazy-methods

SEC-266: Speed up resolution of virtual callsites in lazy loading
smowton pushed a commit to smowton/cbmc that referenced this issue May 9, 2018
f7602af Merge commit 'bb88574aaa4043f0ebf0ad6881ccaaeb1f0413ff' into merge-develop-20180327
906aeb3 Merge pull request diffblue#349 from diffblue/owen-jones-diffblue/fix-compilation-for-release
3d8423c Merge pull request diffblue#350 from diffblue/owen-jones-diffblue/skip-duplicate-callsites-in-lazy-methods
73fb488 bugfix from upstream repo for generic crash
fd76555 Speed up resolution of virtual callsites in lazy loading
3fd28f3 Replace assert(X) by UNREACHABLE/INVARIANT(X)
557158e Merge pull request diffblue#334 from diffblue/pull-support-20180216
1e48132 Merge from master, 20180216
ad7b28e Updates requsted in the PR: mostly rename 'size -> length'.
e3fcb9b Introducing MAX_FILE_NAME_SIZE constant.
bb88574 Merge pull request diffblue#1806 from thk123/refactor/address-review-comments-from-1796
db9c214 Merge pull request diffblue#1850 from tautschnig/include-cleanup
78fbf08 Merge pull request diffblue#1844 from smowton/smowton/feature/prepare-symex-for-lazy-loading
4098ed5 Merge pull request diffblue#1849 from smowton/smowton/cleanup/java-main-function-types
06f3e83 Use C++ headers instead of their C variants
e918a91 Goto-symex: add support for general function accessor
9e31303 Symex: switch to incrementally populating address-taken locals
ac5af68 Address-taken locals analysis: support incremental analysis
fe775f3 Merge pull request diffblue#1843 from peterschrammel/instructions-function
a6fd729 Cleanup tests with anomalous main functions
5df3fca Clean up get_function_id hacks
552b100 Set function member of each goto instruction in goto program passes
38e6e4a Merge pull request diffblue#1813 from smowton/smowton/fix/cleanup-unused-clinits
278e4e6 Merge pull request diffblue#1826 from smowton/smowton/fix/java-inherited-static-fields
a2ebb33 Merge pull request diffblue#1713 from karkhaz/kk-debug-timestamps
7b5dd17 Merge pull request diffblue#1834 from diffblue/library-preconditions
1da5be1 Add tests for inherited static fields
19d622b Add tests to verify that synthetic method removal is performed
adc9fd4 Java frontend: clean up unused clinit symbols
f15c312 Exclude j.l.O from possible static field hosts.
afa443c US spelling of initialize
d4d4a9a Tolerate stub static fields defined on non-stub types
873e1f6 Guess public access for stub globals
d6783d8 Java method converter: look for inherited static fields
32cc538 Insert stub static globals onto any incomplete ancestor class
b2d3d61 Search static fields inherited from interfaces
045ac05 Create stub globals on the first parent incomplete class
5b3cde5 Use a common instance of class_hierarchyt in get_inherited_component
e73e756 Create stub globals: check for inherited globals
bea6371 Annotate static fields with accessibility
168c2a8 Generalise get_inherited_method
f3160e1 resolve_concrete_function_callt -> resolve_inherited_componentt
82549de Emit timestamps on each line of output
3f6965b Replace util/timer* with std::chrono
ef08ae2 Merge pull request diffblue#1820 from smowton/smowton/fix/remove-string-solver-iteration-limit
0f20482 Merge pull request diffblue#1836 from karkhaz/kk-remove-unused-lambda-capture
e8105bd Merge pull request diffblue#1833 from diffblue/symex_class_cleanup
f6f45fc turn some assertions in the stdlib.h models into preconditions
9ea0cc6 pre-conditions for strings
fbd54df Remove unused lambda capture
9620802 Merge pull request diffblue#1815 from smowton/smowton/feature/replace-clinit-unwinder
9b59631 Merge pull request diffblue#1828 from smowton/smowton/cleanup/remove-recreate-initialize
1ac9abe Remove string refinement iteration limit
c94548c preconditions for delete and delete[]
9ba7fe2 cleanup of some noise (mostly obvious declarators) in the goto_symext class
bb64ea6 clean up symex_assign vs. symex_assign_rec
932a38f Merge pull request diffblue#1827 from karkhaz/kk-symex-operator-tidy
968d97e Remove __CPROVER_initialize recreation
06a220a Reimplement remove-static-init-loops to avoid need to inspect GOTO program
2bb98d9 Merge pull request diffblue#1819 from romainbrenguier/refactor/coverage-instrumentation
6492b3a Rearrange cover_basic_blocks header
a9549e7 Define constants as const
fa35ccd Pull continuation_of_block function out
560d712 Declare constants as const
35422f3 Make update_covered_lines a static function
b4cadf8 [path explore 1/8] Tidy up symext top-level funs
0f3ae1a Make representative_inst an optional
dc696a4 Make format_number_range function instead of class
678218a Merge pull request diffblue#1825 from thk123/refactor/corrected-path-of-language-file
ba76a8f Merge pull request diffblue#1751 from tautschnig/fix-1748
b665269 Correcting path to a file
d0889a8 Merge pull request diffblue#1822 from diffblue/legacy-language
441f706 Merge pull request diffblue#1823 from diffblue/cleanup
11714b2 use constant_exprt version of to_integer
733f3b8 remove old-style constructor for member_exprt
63f09ac remove unused function make_next_state
77c8b9c remove translation for certain boolean program constructs
1bac484 cleanout decision_proceduret::in_core
d8967f5 moving language.h and language_file.h to langapi folder
f9b9599 Merge pull request diffblue#1761 from diffblue/function_typet
dd040e5 Added function_typet.
bcd88a0 Merge pull request diffblue#1821 from smowton/smowton/feature/test-pl-tags
45f0939 test.pl: add support for tagging test-cases
40b8c03 Updates requested in PR - mainly rename of functions.
7f868e2 Reused private code in 'remove_virtual_functions.cpp' by making it public.
ae6775a Merge pull request diffblue#1790 from martin-cs/fix/correct-domain-interface
d7bb937 Catch the case when a GOTO instruction is effectively a SKIP.
b2fba97 Correct domain transformers so that they meet the preconditions.
d447c26 Document the invariants on iterators arguments to transform and merge.
e3db794 Whitespace changes to keep clang-format happy.
1990994 Revert "Add edge type parameter to ai transform method"
3ca91bc Revert "Fix iterator comparison bug in reaching_definitions.cpp"
ac036fd Revert "Fix iterator equality check bug in dependence_graph.cpp"
86cadcd Revert "Fix iterator equality check bug in custom_bitvector_analysis.cpp"
db925de Revert "Fix iterator equality check bug in constant_propagator.cpp"
2c69364 Merge pull request diffblue#1811 from cesaro/iterator-fix
807268e Fixes the symbol_base_tablet iterator
0df054c Merge pull request diffblue#1781 from smowton/smowton/feature/java-create-stub-globals-earlier
e163ab6 Java frontend: create synthetic static initialisers for stub globals
fbcb423 Merge pull request diffblue#1802 from NathanJPhillips/feature/symbol_iterator
e106cf8 Merge pull request diffblue#1793 from smowton/smowton/cleanup/remove-java-new-lowering-pass
52dfc36 Merge pull request diffblue#1731 from diffblue/bugfix/all_resolved_calls
f123ae9 Adding comment referencing where the invariant comes from
f7c89e1 Add iterator for symbol_table_baset
150f826 Merge pull request diffblue#1801 from hannes-steffenhagen-diffblue/add-idea-gitignore
745afbc Merge pull request diffblue#1796 from thk123/refactor/bytecode-parsing-tidy
6362295 Add .idea (CLion) directory to .gitignore
31da890 Revert "Do lowering of java_new as a function-level pass"
6f6fda7 Merge pull request diffblue#1794 from smowton/smowton/fix/goto-diff-test-escapes
4a538d2 Adding comments on the non-standard patternt
9bfe177 Adding an early guard for correctly parsed exception table
6fe1808 Improved error reporting on invalid constant pool index
93dab4c Escape curly braces in regexes
814cfcc Adapt failing unit test for value set analysis
3ff90bc Add unit test
e67a96e Add regression test
3df5348 Adapt regression tests for virtual functions.
09efc90 Re-Resolve function calls if only java.lang.Object was found.
a619e48 Merge pull request diffblue#1763 from jeannielynnmoulton/base_class_info_tg1287
0b8dd57 Merge pull request diffblue#1785 from smowton/smowton/fix/core-models-cmake-script
50dcec8 Adding unit tests for extracting generic bases' info
54df3a1 Correcting generic parameters in bases for implicitly generic classes
6d691d7 Parsing generic bases' information into the class symbol
7d041f0 Defining a new type for generic bases
f10eb71 Fix Java core-models build script
8d66028 Merge pull request diffblue#1774 from smowton/smowton/feature/java-create-clinit-state-earlier
679d9b8 Java frontend: create static initialiser globals ahead of time
4a93a29 Merge pull request diffblue#1788 from smowton/smowton/fix/java_tcmp_nan
6ad8ffd Fix Java ternary-compare against NaN
1e0ac30 Turn get_may, set_may, etc into irep_ids
b0cb1ee Merge pull request diffblue#1766 from smowton/smowton/feature/java-frontend-create-literal-globals-early
a2e3af5 Merge pull request diffblue#1744 from smowton/smowton/feature/instrument_cover_per_function
22ae7aa Merge pull request diffblue#1637 from tautschnig/bswap
a1a972f Merge pull request diffblue#1776 from smowton/smowton/feature/class-hierarchy-grapht
ef3c598 Merge pull request diffblue#1775 from diffblue/refactor/set_classpath
45dd840 Merge pull request diffblue#1728 from romainbrenguier/refactor/split-axiom-vectors
8a27950 Java frontend: create String an Class literals earlier
d95cb12 Move string literal initialisation into separate file
515ebdd CI lazy methods: scan global initialisers for global references
cab7b52 C front-end: fix promotion order for types ranking lower than int
c450328 Support for --16 on Visual Studio, no _WIN64 in 32-bit mode
b2c4188 Do not use non-trivial system headers with --32
80b972b Use split_string in set_classpath
fdb2ebc Merge pull request diffblue#1773 from smowton/smowton/feature/string-solver-ensure-class-graph-consistency
a6eed7c Add class-hierarchy variant based on grapht
311af6d Coverage: fully support instrumenting one function at a time
ceafd85 Java string solver: ensure base types are loaded
1e17db6 Merge pull request diffblue#1735 from cesaro/core-models
6844760 Merge pull request diffblue#1769 from smowton/smowton/fix/nondet-initialize-after-initialize
a8e659c Fixed CMake linker ODR violations caused by a regression-test
f66288b Internalize core models of the Java Class Library
34216f5 Refactor jar loading
ed008f9 Add constructors for having memory-loaded jar files This allows the jar_file class to load from a buffer (c array) as opposed to a file
86a34c9 Merge pull request diffblue#1765 from smowton/smowton/fix/ci-lazy-methods-array-element-types
1e11f6d Add test for multiple array types in single method
5009cbb CI lazy methods: re-explore array types with different element types
857fcf9 Cleanup unused fields in string refinement
51d86f5 Adapt unit tests for splitted axiom vectors
1843e44 Split string generator axioms into separate vectors
5669d9b Java: run nondet-initialize method *after* initialization
0b5a5c3 Rename test case
3440018 Provide function name in goto_model_functiont
f17e2c8 Merge pull request diffblue#1741 from smowton/smowton/feature/add_failed_symbols_per_function
f65f0fd Merge pull request diffblue#1764 from smowton/smowton/feature/java-infer-opaque-type-fields-earlier
dbc00a7 Add doxygen to add-failed-symbols
3788467 JBMC: add failed symbols on a per-function basis
e934867 Provide a journalling symbol table to process-goto-function
e86e2a0 Java: infer opaque type fields before method conversion
f0f50e3 Journalling symbol table: enable nesting
58d5980 Merge pull request diffblue#1740 from smowton/smowton/feature/adjust_float_expressions_per_function
c91ff69 JBMC: adjust float expressions per function
eed983a JBMC: add property checks on a per-function basis
db3bc99 JBMC: run convert-nondet on a per-function basis
99ea8fe JBMC: run replace-Java-nondet on function-by-function basis
bfd4f50 Merge pull request diffblue#1730 from smowton/smowton/feature/remove_returns_per_function
96569c3 JBMC: remove return values on a per-function basis
a7595c1 Remove returns: support running per-function
fd6e195 Merge pull request diffblue#1718 from cesaro/concurrency-team-small-fixes
e6fe617 Merge pull request diffblue#1705 from jgwilson42/goto-diff-tests
22afc5c Fixes wrong invocation order for static initializers
5c3997d Refectors how CBMC interprets a codet thread-block
001c1a2 ireps of type "ID_atomic_begin" and "ID_atomic_end" will now be properly displayed when the "show-symbol-table" flag is specified.
d978ef9 Folder build/ ignored.
bc145fd Merge pull request diffblue#1756 from romainbrenguier/tests/index-of-corrections#TG-2246
47b4ee9 Merge pull request diffblue#1725 from cesaro/exception-handlig-fixes
d397d6a Merge pull request diffblue#1726 from diffblue/multi_ary_expr2c
bd95317 Merge pull request diffblue#1753 from diffblue/xor_exprt
1d4af6d Merge pull request diffblue#1747 from NathanJPhillips/feature/upstream-cleanup
9c7debb Merge pull request diffblue#1750 from pkesseli/feature/sat-interrupt
f11c995 Merge pull request diffblue#1749 from pkesseli/ci/remove-unapproved
981c8e0 Merge pull request diffblue#1743 from tautschnig/dump-c-fix
bcb076b Correct tests for String.indexOf
ef5c6f0 Merge pull request diffblue#1742 from owen-jones-diffblue/owen-jones-diffblue/small-shared-ptr
6c9f05e Fixes to exception handling behaviour
80dd48a added multi-ary xor_exprt
703e4a3 Remove unapproved C++11 header warning.
bf7ed1a Merge pull request diffblue#313 from diffblue/owen-jones-diffblue/add-structured-lhs-to-value-set
cc9398d Expose MiniSAT's `interrupt()`
8360233 Merge pull request diffblue#1646 from peterschrammel/list-goto-functions
e4a2763 Tests for scope changes for variables and functions
8ee1956 goto-diff tests for package name changes
ce3a5e9 Basic tests for java goto-diff
3bf9987 Compare access qualifiers in goto-diff
f71cc7f Attach class name to method symbol
1f06d35 Merge pull request diffblue#312 from diffblue/pull-support-20180112
fda9daa Cleanup of create-and-swap to emplace
e42e97a Merge commit '23666e3af35673c734c9816ffc131b6b9a379e86' into pull-support-20180112
53f1a41 Populate structured_lhs in all `entryt`s
d7121f2 dump-c: fix support of use-system-headers
eb5ec24 Merge pull request diffblue#1736 from hannes-steffenhagen-diffblue/develop_fix-bitfield-pretty-printing
7a0de46 Add comment suggested by @owen-jones-diffblue
b741d4b Use small intrusive pointer in irep
434cc99 Merge pull request diffblue#1732 from peterschrammel/catch-sat-memout
8ae53bb Merge pull request diffblue#1733 from peterschrammel/mem-limit
574101c Add `structured_lhs` field to entryt
4f1a67a Uses alternatives to get_string in type2name when possible
b46149d Merge pull request diffblue#1719 from smowton/smowton/cleanup/remove_exceptions_single_global
82a7ec6 Adds regression test for bitfield naming bug
651d8d1 Fixes use of wrong identifier when pretty printing bitfield types
638937a Merge pull request diffblue#1709 from romainbrenguier/doc/string-solver-intro
1d1be4c Move non-string-specific part of doc to solvers
549eb57 Delete trailing whitespaces
db3e044 Add introduction to string solver documentation
74be7fb Merge pull request diffblue#1729 from romainbrenguier/refactor/unused-nonempty-option
d101b22 Set memory limit utility
ef45a1d Replace assertions by invariants
84e04a7 Catch Glucose::OutOfMemoryException
89fc48d Replace assertions by invariants
5e85701 Catch Minisat::OutOfMemoryException
b8cee29 Enable list-goto-functions in clobber
d902ec8 Replace cout by message stream in show-goto-functions
d970673 Move show-loops in the right place in goto-diff
e1227ef Enable list-goto-functions in goto diff
7e1110c Enable list-goto-functions in goto-instrument
0fb4868 Enable list-goto-functions in goto-analyzer
e67abfa Remove exceptions: switch to single inflight exception global
2fabbd4 Enable list-goto-functions in JBMC
9e1705f Enable list-goto-functions in CBMC
ebd8248 Add list-goto-functions command line option
2fe43a9 Add parameter to list goto functions without printing bodies
3d492fe Add documentation of return values
5a8eea5 Remove the string-non-empty option
9810f92 Drop string_non_empty field for string refinement
fec16d7 expr2c now distinguishes binary and multi-ary expressions
d16a918 C library: network byteorder functions
05bc9ed Implement bswap in SAT back-end
4f37035 Introduce bswap_exprt

git-subtree-dir: cbmc
git-subtree-split: f7602af
smowton added a commit to smowton/cbmc that referenced this issue May 9, 2018
REVERT: 720200398 Merge branch 'develop' of github.com:diffblue/cbmc into CBMC_subtree_2018-04-10
REVERT: e2d4b09dd Updates for merge
REVERT: 1ab596d0e Merge commit '3b8120f3a8c9ed3a343493a44ac454ae265946c1' into develop
REVERT: f7602af Merge commit 'bb88574aaa4043f0ebf0ad6881ccaaeb1f0413ff' into merge-develop-20180327
REVERT: 207b801 Merge branch 'develop' into merge_2018-03-26
REVERT: 906aeb3 Merge pull request diffblue#349 from diffblue/owen-jones-diffblue/fix-compilation-for-release
REVERT: 3d8423c Merge pull request diffblue#350 from diffblue/owen-jones-diffblue/skip-duplicate-callsites-in-lazy-methods
REVERT: 73fb488 bugfix from upstream repo for generic crash
REVERT: fd76555 Speed up resolution of virtual callsites in lazy loading
REVERT: 3fd28f3 Replace assert(X) by UNREACHABLE/INVARIANT(X)
REVERT: 557158e Merge pull request diffblue#334 from diffblue/pull-support-20180216
REVERT: 1e48132 Merge from master, 20180216
REVERT: ad7b28e Updates requsted in the PR: mostly rename 'size -> length'.
REVERT: e3fcb9b Introducing MAX_FILE_NAME_SIZE constant.
REVERT: 40b8c03 Updates requested in PR - mainly rename of functions.
REVERT: 7f868e2 Reused private code in 'remove_virtual_functions.cpp' by making it public.
REVERT: 1e0ac30 Turn get_may, set_may, etc into irep_ids
REVERT: bf7ed1a Merge pull request diffblue#313 from diffblue/owen-jones-diffblue/add-structured-lhs-to-value-set
REVERT: 1f06d35 Merge pull request diffblue#312 from diffblue/pull-support-20180112
REVERT: e42e97a Merge commit '23666e3af35673c734c9816ffc131b6b9a379e86' into pull-support-20180112
REVERT: 53f1a41 Populate structured_lhs in all `entryt`s
REVERT: 574101c Add `structured_lhs` field to entryt
REVERT: 3d492fe Add documentation of return values
REVERT: d190fd8 Merge remote-tracking branch 'upstream/develop' into pull-support-20180112
REVERT: 092df69 Switch from custom file / path routines to Boost-filesystem
REVERT: faf8f00 Merge commit 'a83b52cddbed22304372c276512c63701eb3aedb' into pull-support-20180104
REVERT: 67ec6f2 Merge remote-tracking branch 'upstream/develop' into pull-support-20180104
REVERT: 5266ba2 Merge commit 'ac4756fc3bb0e853f04de2b69f300d65cfbfc553' into pull-support-20171212
REVERT: ca5aa95 Merge remote-tracking branch 'upstream/develop' into merge-develop-20171212
REVERT: ed5f719 Move of alias code from VSA to LVSA.
REVERT: a44becc Requests in the PR (structure of comments).
REVERT: ef51720 Updates requested in the PR (added comments).
REVERT: 377a515 Introducing function 'get_may_alias_values'.
REVERT: c0de6fb Merge pull request diffblue#273 from diffblue/smowton/fix/end_to_end_tests
REVERT: 37e5b80 Add `override` in a few places
REVERT: 653dcb6 Fix taint instrumenter handling array initalisers
REVERT: 523f60e Change template of value_set_analysis_baset
REVERT: 4f45985 Merge pull request diffblue#271 from diffblue/smowton/merge_develop_2017_11_16
REVERT: 7619d15 Rename ID_lvsa_mode to ID_lvsa_evs_type
REVERT: 471180d Adapt to upstream CBMC changes
REVERT: e8b3cb9 Merge remote-tracking branch 'upstream/develop' into smowton/merge/develop_20171116
REVERT: f653f85 Merge pull request diffblue#263 from diffblue/owen/fix-memory-bug
REVERT: 599a2f9 Merge pull request diffblue#264 from diffblue/smowton/fix/slice24_include
REVERT: de905e7 slice24 test: switch from malloc.h to stdlib.h
REVERT: c8efb6f Fix bug that can cause segfault
REVERT: fac9dea Rename "#lva_mode" to "lvsa_mode"
REVERT: 72c8533 Make two irep IDs
REVERT: 93ebb84 Merge commit '356aed461b387a8ae815a9901a16d26f32f102be' into develop
REVERT: 4820601 Merge remote-tracking branch 'diffblue/develop' into merge-dev-to-ss
REVERT: b03ec16 Merge pull request diffblue#239 from diffblue/bugfix/value_sets_fi_and_reaching_defs_retrievals_of_dynamic_objects
REVERT: 739c7f5 Merge remote-tracking branch 'upstream/develop' into merge-develop-20171026
REVERT: 37b868a Merge pull request diffblue#251 from diffblue/feature/revert-recording-symbol-table
REVERT: c4ed1ae Revert security-scanner version of recording symbol table
REVERT: e83e307 Fixed scope of moved symbol
REVERT: a6adb19 Fix more catch std::string occurances
REVERT: d115b4e catch by const ref instead of by value or non-const ref
REVERT: 912ee38 Improve symbol table style
REVERT: 6b1a49d Add missing goto-statistics file to Makefile
REVERT: d512204 Add cbmc and jbmc as install targets
REVERT: bc887c5 Merge commit '93e2d7626046f90e14de76abbaf16c57a0425d8a' into pull-support-20171019
REVERT: 64d81f1 Merge remote-tracking branch 'upstream/develop' into pull-support-20171019
REVERT: 9a59fb9 Renamed DiffBlue -> Diffblue
REVERT: db79106 Added explanatory comment for the introduced condition.
REVERT: dfc6a20 Fixing C++ code-style issues.
REVERT: 7989831 Added regression test for the fixed bug.
REVERT: 00b4af2 Bugfix: Explicit retrievals of DOs from value_set amd reaching_defs.
REVERT: 19858f9 Fix zeroing of arrays in value set analysis
REVERT: 12fd5fe Fix identifying arrays in value set analysis
REVERT: 89341da Merge pull request diffblue#227 from diffblue/feature/adding_goto_statistics_to_goto-instrument
REVERT: 9cf47a2 Updates requested in the PR.
REVERT: 4c4a267 Adding computation and save of goto program statistics.
REVERT: 48b154a Bugfix: Exclude functions without bodies from GOTO statistics.
REVERT: 6bc86e1 Merge pull request diffblue#222 from diffblue/feature/lexicographical_ordered_dump_of_functions_and_symbols
REVERT: a73ee46 Merge pull request diffblue#224 from diffblue/feature/file_utils_add_parsing_of_file_extension
REVERT: 421f4eb Merge pull request diffblue#226 from diffblue/feature/goto_statistics
REVERT: 6d9f029 Updates requested in the PR.
REVERT: 6f8ebe4 Updates requested in the PR.
REVERT: d4a04ac Added support of Windows platform to parsing file extension.
REVERT: 1884d67 Merge pull request diffblue#221 from diffblue/bugfix/INVARIANT_while(0)_to_while(false)
REVERT: 39a774f Introducing GOTO program statistics.
REVERT: 821ba1c Updates requested in the PR.
REVERT: 9266de0 Add parsing of file extension from file path-name.
REVERT: 632ae4b Updates to recording_symbol_tablet
REVERT: 56b0b26 Added lexicographical order to textual dump of functions and symbols.
REVERT: 79324b3 INVARIANT: while(0) -> while(false)
REVERT: 733f7b2 Added is_success and is_error helpers
REVERT: 5e7f3f7 Added implicit constructors to main_function_resultt to make code in get_main_symbol even briefer
REVERT: 3317a3a Tidied up code in get_main_symbol
REVERT: 47fe36f Changed main_function_resultt to use an enum instead of a collection of bools
REVERT: a084a6a Reverting indentation in order to make the compiler silent.
REVERT: e4b5e12 Merge pull request diffblue#218 from diffblue/cleanup/typo
REVERT: 5fecceb Added recording_symbol_tablet
REVERT: 4d65951 Split storage for symbol_tablet into a concrete derived type
REVERT: 7b254e2 Made move constructor strong exception safe
REVERT: d66c0bc Changed interface to symbol_tablet::insert
REVERT: 6dc1213 Typo in reachable
REVERT: db9a0a7 Updates requested in the PR.
REVERT: d00c03d Introducing "enable_ccache" switch (default on) into our build system.
REVERT: f079156 Merge pull request diffblue#205 from diffblue/feature/restrict-symbol-table
REVERT: 2462077 Misc review requests
REVERT: 98d0082 Made lookup return optional
REVERT: db69023 Restricted interface of current symbol_tablet
REVERT: ea74c6d Updated comment
REVERT: 909b557 Added INVARIANT to symbol_tablet::remove
REVERT: bd3ee6e Add move insert to symbol_table
REVERT: 18aacc0 Add full JSON-structured output for value-set analysis
REVERT: 0cdd9c6 Improve structure of JSON static-analysis dump
REVERT: 7df9f15 Add LVSA summary dump-to-JSON
REVERT: d0d3620 Merge remote-tracking branch 'upstream/develop' into security-scanner-support
REVERT: ae83e4e Added install command for required projects.
REVERT: c48170e Merge pull request diffblue#192 from diffblue/smowton/feature/split_frontend_final_stage
REVERT: f4df5c6 Add tests for mixed GOTO and C input
REVERT: 215d5bf Split the entry-point-generation phase into two parts
REVERT: ab347d5 Merge pull request diffblue#195 from diffblue/bugfix/missing-const_cast
REVERT: 73fba6e Fixed missing const_cast
REVERT: eaf97f6 Simplify remove_instanceof logic
REVERT: 4969295 Tidy up remove_instanceof
REVERT: 2716410 Update linter to cope with CBMC subtree
REVERT: da91319 Adapt to upstream change in write_goto_binary interface and languaget
REVERT: 08f269c Merge pull request diffblue#1388 from smowton/merge-develop-20170914
REVERT: e3f3abd Merge remote-tracking branch 'upstream/develop' into merge-develop-20170914
REVERT: f25db0a Merge pull request diffblue#189 from diffblue/smowton/fix/remove_debug_code
REVERT: 1fae64c Remove stray use of overlay_map
REVERT: a2834d0 Map wrappers: forward more of the std::map interface
REVERT: 0a668ae Merge commit '6f386e5eeffa223e7213b596403085f8b497023e' into pull-support-20170908-2
REVERT: 04b4f63 Merge pull request diffblue#186 from diffblue/cleanup/misc
REVERT: 577fa6c Tightened up usage of maps
REVERT: 40557df Used range iterators
REVERT: d4e89fd Tidy up symbol_tablet::move
REVERT: 5a58539 Merge pull request diffblue#1354 from NathanJPhillips/merge-develop-to-sss
REVERT: 498718f Code readability
REVERT: 5648db1 Merge latest changes from develop to Security Scanner Support
REVERT: 52eb7ed Merge pull request diffblue#1347 from NathanJPhillips/sss/merge-develop
REVERT: 660f804 Merge develop into SSS
REVERT: 281e384 Workaround for travis performing shallow clones with wrong branch
REVERT: 33d8af7 Merge pull request diffblue#1296 from NathanJPhillips/merge-master
REVERT: c043179 Applied doxygen style to all new comments
REVERT: 3ab10aa Merge branch 'master' into security-scanner-support
REVERT: 29e1832 Merge pull request diffblue#925 from NathanJPhillips/security-scanner-support
REVERT: 42ea812 Fix missing += in Makefile that causes issues in building unit test
REVERT: d016980 Merge master into security-scanner-support
REVERT: fbe3f7a Merge pull request diffblue#845 from NathanJPhillips/security-scanner-support
REVERT: 1e919d1 Merge branch 'master' into security-scanner-support
REVERT: 5159ef1 Merge pull request diffblue#830 from mariusmc92/cleanup/move-singularity-in-vsa
REVERT: 606a5ab Added singularity check method as virtual in VSA
REVERT: 8faef3b Merge pull request diffblue#818 from NathanJPhillips/security-scanner-support
REVERT: 9c06fba Merge master into security-scanner-support
REVERT: cdce3fa Merge pull request diffblue#779 from mariusmc92/cleanup/replace-plain-string-dynamic-object
REVERT: 42f12f1 Added usages of the dynamic-object prefix's string
REVERT: 8a7fbb7 Added global string for dynamic-object prefix
REVERT: 55b3640 Merge pull request diffblue#756 from mariusmc92/feature/recency-analysis
REVERT: 9b728a7 Propagated changes of dynamic-objects' recency
REVERT: 72694d1 Added usage of dynamic-objects with recency
REVERT: 28dc578 Merge pull request diffblue#750 from NathanJPhillips/security-scanner-support
REVERT: 3dc10b7 Merge master into security-scanner-support
REVERT: 33693d8 Merge pull request diffblue#725 from smowton/boost_download
REVERT: e16f583 Switch to using Boost header-only tarball
REVERT: 36851e1 Merge pull request diffblue#706 from smowton/remove_boost_fs_dependency
REVERT: 037da22 Replace boost dependency with simple mkdir -p implementation
REVERT: 3f87bb2 Merge pull request diffblue#704 from NathanJPhillips/feature/serialization-improvements
REVERT: ad18aa9 Use shared_ptr for traits
REVERT: ca0b983 Use explicitly sized integer types
REVERT: 1ab6a25 Undid accidental config.inc change
REVERT: 29cf00c Extension of the call-graph and call-graph-based algorithms (diffblue#641)
REVERT: c694703 Added output in DOT format for class hierarchy. (diffblue#642)
REVERT: ef04e12 Merge pull request diffblue#663 from NathanJPhillips/feature/serialization
REVERT: 0764707 Used assert instead of logic_error as requested in review
REVERT: 74aea8f Added section headings
REVERT: 87a6ff5 Added serialization of irept and dstringt
REVERT: a39da77 Merge pull request diffblue#673 from NathanJPhillips/security-scanner-support
REVERT: 0bd91b5 Merge branch 'master' into security-scanner-support
REVERT: 43caa75 Merge pull request diffblue#667 from NathanJPhillips/security-scanner-support
REVERT: da9fe29 Merged master to get update to delete_directory and linter
REVERT: 08487ad Merge pull request diffblue#634 from smowton/sss_pretty_printing
REVERT: ebf7b78 Merge pull request diffblue#643 from NathanJPhillips/bugfix/file_util_sss
REVERT: ff0f281 Document pretty-printing mechanism
REVERT: 208b2e8 Add pretty-printer extension mechanism
REVERT: c4c75da Merge pull request diffblue#656 from NathanJPhillips/security-scanner-support
REVERT: 8723d57 Merge master into SSS
REVERT: e4ee8e5 Handle path doesn't exist in fileutl_absolute_path
REVERT: 749264b Call get_value_set via a base-class reference
REVERT: a5ccbd9 Add irep IDs used by the security module
REVERT: 7789d01 Add dynamic-object-expr recency
REVERT: dcd058a Comment and slightly reformat strip_casts
REVERT: c6196c3 Lint value-sets
REVERT: 9a811f7 Templatize and virtualize value-set analysis
REVERT: 3cd62e0 Value set: add declared-on-type entry member
REVERT: 53f9cd1 Add function id to value-set.
REVERT: 92ce232 Value set: avoid potential infinite expression
REVERT: 8cbf554 Trim and rename namespace-utils
REVERT: e9205e6 Style namespace-utils
REVERT: a69d950 Add namespace-utils to utils Makefile
REVERT: 229bd5b Add symbol parsing utilities.
REVERT: 116d994 Windows fileutl builds need shlwapi
REVERT: 4bd055b Style and document call graph
REVERT: af7599f Style call_graph
REVERT: 9bfa1ee Amend function documentation style
REVERT: 1095e99 Add call-graph invert and gather-leaves
REVERT: c92564f call_graph: add is-(indirect)-parent functions
REVERT: 0d862d8 Add call-graph topo sort on goto_functionst
REVERT: 85df6db Add call graph sorting and output functions
REVERT: b40dc2b Add option for simplify-expr to keep identical structs
REVERT: 885bedf Add irep IDs
REVERT: 7d57fda Add get-underlying-object utility
REVERT: db44fce Add get_this utility function
REVERT: 5150eca Add parameter-indices to util Makefile
REVERT: 998cc63 Add parameter-indexing utility
REVERT: d895844 Call get_language_options from get_goto_model
REVERT: 554f796 Static analysis: print instructions in dumps
REVERT: 37aa2de Record number of static analysis steps taken
REVERT: 32fd50f Permit static analysis to recurse
REVERT: 8157141 Use function stub behaviour in single-function mode
REVERT: 1c79841 Add static analysis hook for unavailable functions
REVERT: 09937e4 Add overlay-map
REVERT: afe9f5f Make _start optional
REVERT: da72f88 Disable Windows.h min/max define
REVERT: 8bb0fe4 Disable Boost on non-Linux platforms
REVERT: 03eeb47 Style file-util
REVERT: ba470e9 File-util: Windows compatibility fixes
REVERT: b7c00a6 Enable Boost per default
REVERT: c7e65e5 Install boost in test environment
REVERT: be43409 File-util-normalise-path: don't throw
REVERT: fc2d511 Improve path normalization logic
REVERT: a2ff638 Use boost instead of mkdir -p if available
REVERT: a7022f1 Improve file-util code style
REVERT: 82ace0f Add basic file utilities
REVERT: df36049 Add json->irep deserialization routine
REVERT: 938d739 Java checkcast: fix stack when check disabled
REVERT: dda9efb Add string-infix utility
REVERT: ca45a2b Add goto-program instruction iterator hasher
REVERT: 7428ee5 Merge pull request diffblue#583 from diffblue/master

git-subtree-dir: cbmc
git-subtree-split: 768e8a6
@thomasspriggs
Copy link
Contributor

I have just been checking over this issue, as a review of old issues. It looks like this is still a problem as I can still reproduce the failure. The original link in this issue seems to be broken, but I think the example can still be found here - https://github.com/sosy-lab/sv-benchmarks/blob/master/c/floats-cbmc-regression/float-rounding1.i

@thomasspriggs
Copy link
Contributor

@martin-cs I have assigned this to you, as you had volunteered and the issue was unassigned.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants