Skip to content

Commit

Permalink
Merge pull request diffblue#1814 from NlightNFotis/flush-json-stream
Browse files Browse the repository at this point in the history
Fix for cbmc running out of memory while printing traces using json_ui / target: develop
  • Loading branch information
chrisr-diffblue authored Mar 19, 2018
2 parents 7161f17 + 123be20 commit 7f3ba30
Show file tree
Hide file tree
Showing 24 changed files with 919 additions and 322 deletions.
4 changes: 2 additions & 2 deletions regression/goto-diff/java-add-package/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ old.jar --json-ui
activate-multi-line-match
EXIT=0
SIGNAL=0
"deletedFunctions": \[\n \{\n "name": "java::Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.<init>:\(\)\V",\n "line": "1"\n \}\n \},\n \{\n "name": "java::Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.foo:\(I\)I",\n "line": "4"\n \}\n \},\n \{\n "name": "java::Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test.bar:\(I\)I",\n "line": "12"\n \}\n \}\n \],\n
"deletedFunctions": \[\n \{\n "name": "java::Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.<init>:\(\)\V",\n "line": "1"\n \}\n \},\n \{\n "name": "java::Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.foo:\(I\)I",\n "line": "4"\n \}\n \},\n \{\n "name": "java::Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test.bar:\(I\)I",\n "line": "12"\n \}\n \}\n \],\n
"modifiedFunctions": \[ \],
"newFunctions": \[\n \{\n "name": "java::foo\.Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.<init>:\(\)V",\n "line": "3"\n \}\n \},\n \{\n "name": "java::foo\.Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.foo:\(I\)I",\n "line": "5"\n \}\n \},\n \{\n "name": "java::foo\.Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.bar:\(I\)I",\n "line": "14"\n \}\n \}\n \],
"newFunctions": \[\n \{\n "name": "java::foo\.Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.<init>:\(\)V",\n "line": "3"\n \}\n \},\n \{\n "name": "java::foo\.Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.foo:\(I\)I",\n "line": "5"\n \}\n \},\n \{\n "name": "java::foo\.Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.bar:\(I\)I",\n "line": "14"\n \}\n \}\n \],
--
^warning: ignoring
4 changes: 2 additions & 2 deletions regression/goto-diff/java-del-package/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ old.jar --json-ui
activate-multi-line-match
EXIT=0
SIGNAL=0
"deletedFunctions": \[\n \{\n "name": "java::foo\.Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.<init>:\(\)V",\n "line": "3"\n \}\n \},\n \{\n "name": "java::foo\.Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.foo:\(I\)I",\n "line": "5"\n \}\n \},\n \{\n "name": "java::foo\.Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.bar:\(I\)I",\n "line": "14"\n \}\n \}\n \],
"deletedFunctions": \[\n \{\n "name": "java::foo\.Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.<init>:\(\)V",\n "line": "3"\n \}\n \},\n \{\n "name": "java::foo\.Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.foo:\(I\)I",\n "line": "5"\n \}\n \},\n \{\n "name": "java::foo\.Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.bar:\(I\)I",\n "line": "14"\n \}\n \}\n \],
"modifiedFunctions": \[ \],
"newFunctions": \[\n \{\n "name": "java::Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.<init>:\(\)\V",\n "line": "1"\n \}\n \},\n \{\n "name": "java::Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.foo:\(I\)I",\n "line": "4"\n \}\n \},\n \{\n "name": "java::Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test.bar:\(I\)I",\n "line": "12"\n \}\n \}\n \],\n
"newFunctions": \[\n \{\n "name": "java::Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.<init>:\(\)\V",\n "line": "1"\n \}\n \},\n \{\n "name": "java::Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.foo:\(I\)I",\n "line": "4"\n \}\n \},\n \{\n "name": "java::Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test.bar:\(I\)I",\n "line": "12"\n \}\n \}\n \],\n
--
^warning: ignoring
2 changes: 1 addition & 1 deletion regression/goto-diff/java-deleted-function/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ old.jar --json-ui
activate-multi-line-match
EXIT=0
SIGNAL=0
"deletedFunctions": \[\n \{\n "name": "java::Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.foo:\(I\)I",\n "line": "4"\n \}\n \}\n \],
"deletedFunctions": \[\n \{\n "name": "java::Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.foo:\(I\)I",\n "line": "4"\n \}\n \}\n \],
"modifiedFunctions": \[ \],
"newFunctions": \[ \],
--
Expand Down
2 changes: 1 addition & 1 deletion regression/goto-diff/java-mod-identifier2/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ activate-multi-line-match
EXIT=0
SIGNAL=0
"deletedFunctions": \[ \],
"modifiedFunctions": \[\n \{\n "name": "java::Test\.foo:\(II\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.foo:\(II\)I",\n "line": "4"\n \}\n \}\n \],\n
"modifiedFunctions": \[\n \{\n "name": "java::Test\.foo:\(II\)I",\n "sourceLocation": \{\n "file": "Test\.java",\n "function": "java::Test\.foo:\(II\)I",\n "line": "4"\n \}\n \}\n \],\n
"newFunctions": \[ \],
--
^warning: ignoring
4 changes: 2 additions & 2 deletions regression/goto-diff/java-mod-package/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ old.jar --json-ui
activate-multi-line-match
EXIT=0
SIGNAL=0
"deletedFunctions": \[\n \{\n "name": "java::foo\.Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.<init>:\(\)V",\n "line": "3"\n \}\n \},\n \{\n "name": "java::foo\.Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.foo:\(I\)I",\n "line": "5"\n \}\n \},\n \{\n "name": "java::foo\.Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.bar:\(I\)I",\n "line": "14"\n \}\n \}\n \],
"deletedFunctions": \[\n \{\n "name": "java::foo\.Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.<init>:\(\)V",\n "line": "3"\n \}\n \},\n \{\n "name": "java::foo\.Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.foo:\(I\)I",\n "line": "5"\n \}\n \},\n \{\n "name": "java::foo\.Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "foo/Test\.java",\n "function": "java::foo\.Test\.bar:\(I\)I",\n "line": "14"\n \}\n \}\n \],
"modifiedFunctions": \[ \],
"newFunctions": \[\n \{\n "name": "java::com\.diffblue\.foo\.Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "com/diffblue/foo/Test\.java",\n "function": "java::com\.diffblue\.foo\.Test\.<init>:\(\)\V",\n "line": "3"\n \}\n \},\n \{\n "name": "java::com\.diffblue\.foo\.Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "com/diffblue/foo/Test\.java",\n "function": "java::com\.diffblue\.foo\.Test\.foo:\(I\)I",\n "line": "6"\n \}\n \},\n \{\n "name": "java::com\.diffblue\.foo\.Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "com/diffblue/foo/Test\.java",\n "function": "java::com\.diffblue\.foo\.Test.bar:\(I\)I",\n "line": "14"\n \}\n \}\n \],\n
"newFunctions": \[\n \{\n "name": "java::com\.diffblue\.foo\.Test\.<init>:\(\)V",\n "sourceLocation": \{\n "file": "com/diffblue/foo/Test\.java",\n "function": "java::com\.diffblue\.foo\.Test\.<init>:\(\)\V",\n "line": "3"\n \}\n \},\n \{\n "name": "java::com\.diffblue\.foo\.Test\.foo:\(I\)I",\n "sourceLocation": \{\n "file": "com/diffblue/foo/Test\.java",\n "function": "java::com\.diffblue\.foo\.Test\.foo:\(I\)I",\n "line": "6"\n \}\n \},\n \{\n "name": "java::com\.diffblue\.foo\.Test\.bar:\(I\)I",\n "sourceLocation": \{\n "file": "com/diffblue/foo/Test\.java",\n "function": "java::com\.diffblue\.foo\.Test.bar:\(I\)I",\n "line": "14"\n \}\n \}\n \],\n
--
^warning: ignoring
2 changes: 1 addition & 1 deletion regression/goto-diff/java-new-function/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ EXIT=0
SIGNAL=0
"deletedFunctions": \[ \],
"modifiedFunctions": \[ \],
"newFunctions": \[\n \{\n "name": "java::Test\.foo:\(II\)I",\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test\.foo:\(II\)I",\n "line": "4"\n \}\n \}\n \],
"newFunctions": \[\n \{\n "name": "java::Test\.foo:\(II\)I",\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test\.foo:\(II\)I",\n "line": "4"\n \}\n \}\n \],
--
^warning: ignoring
2 changes: 1 addition & 1 deletion regression/goto-diff/java-properties/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ old.jar --json-ui --show-properties --cover location
activate-multi-line-match
EXIT=0
SIGNAL=0
"deletedFunctions": \[\n \{\n "name": "java::Test.obsolete:\(\)V",\n "properties": \[\n \{\n "class": "coverage",\n "coveredLines": "18",\n "description": "block 1",\n "expression": "false",\n "name": "java::Test.obsolete:\(\)V.coverage.1",\n "sourceLocation": \{\n "bytecodeIndex": "0",\n "file": "Test.java",\n "function": "java::Test.obsolete:\(\)V",\n "line": "18"\n }\n }\n ],\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test.obsolete:\(\)V",\n "line": "18"\n }\n }\n ],\n "modifiedFunctions": \[\n \{\n "name": "java::Test.<init>:\(\)V",\n "properties": \[\n \{\n "class": "coverage",\n "coveredLines": "6",\n "description": "block 2",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.1",\n "sourceLocation": \{\n "bytecodeIndex": "1",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "6"\n }\n },\n \{\n "class": "coverage",\n "coveredLines": "4",\n "description": "block 3",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.2",\n "sourceLocation": \{\n "bytecodeIndex": "3",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "4"\n }\n },\n \{\n "class": "coverage",\n "coveredLines": "4",\n "description": "block 4",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.3",\n "sourceLocation": \{\n "bytecodeIndex": "5",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "4"\n }\n },\n \{\n "class": "coverage",\n "coveredLines": "4",\n "description": "block 5",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.4",\n "sourceLocation": \{\n "bytecodeIndex": "6",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "4"\n }\n },\n \{\n "class": "coverage",\n "coveredLines": "7",\n "description": "block 6",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.5",\n "sourceLocation": \{\n "bytecodeIndex": "7",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "7"\n }\n }\n ],\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "6"\n }\n },\n \{\n "name": "java::Test.<clinit>:\(\)V",\n "properties": \[\n \{\n "class": "coverage",\n "coveredLines": "3",\n "description": "block 1",\n "expression": "false",\n "name": "java::Test.<clinit>:\(\)V.coverage.1",\n "sourceLocation": \{\n "bytecodeIndex": "1",\n "file": "Test.java",\n "function": "java::Test.<clinit>:\(\)V",\n "line": "3"\n }\n }\n ],\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test.<clinit>:\(\)V",\n "line": "3"\n }\n }\n ],\n "newFunctions": \[\n \{\n "name": "java::Test.newfun:\(\)V",\n "properties": \[\n \{\n "class": "coverage",\n "coveredLines": "18",\n "description": "block 1",\n "expression": "false",\n "name": "java::Test.newfun:\(\)V.coverage.1",\n "sourceLocation": \{\n "bytecodeIndex": "0",\n "file": "Test.java",\n "function": "java::Test.newfun:\(\)V",\n "line": "18"\n }\n }\n ],\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test.newfun:\(\)V",\n "line": "18"\n }\n }\n ],\n
"deletedFunctions": \[\n \{\n "name": "java::Test.obsolete:\(\)V",\n "properties": \[\n \{\n "class": "coverage",\n "coveredLines": "18",\n "description": "block 1",\n "expression": "false",\n "name": "java::Test.obsolete:\(\)V.coverage.1",\n "sourceLocation": \{\n "bytecodeIndex": "0",\n "file": "Test.java",\n "function": "java::Test.obsolete:\(\)V",\n "line": "18"\n }\n }\n ],\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test.obsolete:\(\)V",\n "line": "18"\n }\n }\n ],\n "modifiedFunctions": \[\n \{\n "name": "java::Test.<init>:\(\)V",\n "properties": \[\n \{\n "class": "coverage",\n "coveredLines": "6",\n "description": "block 2",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.1",\n "sourceLocation": \{\n "bytecodeIndex": "1",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "6"\n }\n },\n \{\n "class": "coverage",\n "coveredLines": "4",\n "description": "block 3",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.2",\n "sourceLocation": \{\n "bytecodeIndex": "3",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "4"\n }\n },\n \{\n "class": "coverage",\n "coveredLines": "4",\n "description": "block 4",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.3",\n "sourceLocation": \{\n "bytecodeIndex": "5",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "4"\n }\n },\n \{\n "class": "coverage",\n "coveredLines": "4",\n "description": "block 5",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.4",\n "sourceLocation": \{\n "bytecodeIndex": "6",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "4"\n }\n },\n \{\n "class": "coverage",\n "coveredLines": "7",\n "description": "block 6",\n "expression": "false",\n "name": "java::Test.<init>:\(\)V.coverage.5",\n "sourceLocation": \{\n "bytecodeIndex": "7",\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "7"\n }\n }\n ],\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test.<init>:\(\)V",\n "line": "6"\n }\n },\n \{\n "name": "java::Test.<clinit>:\(\)V",\n "properties": \[\n \{\n "class": "coverage",\n "coveredLines": "3",\n "description": "block 1",\n "expression": "false",\n "name": "java::Test.<clinit>:\(\)V.coverage.1",\n "sourceLocation": \{\n "bytecodeIndex": "1",\n "file": "Test.java",\n "function": "java::Test.<clinit>:\(\)V",\n "line": "3"\n }\n }\n ],\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test.<clinit>:\(\)V",\n "line": "3"\n }\n }\n ],\n "newFunctions": \[\n \{\n "name": "java::Test.newfun:\(\)V",\n "properties": \[\n \{\n "class": "coverage",\n "coveredLines": "18",\n "description": "block 1",\n "expression": "false",\n "name": "java::Test.newfun:\(\)V.coverage.1",\n "sourceLocation": \{\n "bytecodeIndex": "0",\n "file": "Test.java",\n "function": "java::Test.newfun:\(\)V",\n "line": "18"\n }\n }\n ],\n "sourceLocation": \{\n "file": "Test.java",\n "function": "java::Test.newfun:\(\)V",\n "line": "18"\n }\n }\n ],\n
--
^warning: ignoring
Loading

0 comments on commit 7f3ba30

Please sign in to comment.