{"action":"created","comment":{"url":"https://api.github.com/repos/codespecs/daikon/pulls/comments/75965111","id":75965111,"diff_hunk":"@@ -2357,11 +2357,11 @@ Static variables of a class have names of the form\n @cindex pre-state variables\n @code{orig(x)} refers to the value of variable @code{x} upon\n entry to a procedure (because the procedure body might modify the value\n-of @code{x}).  These variables appear only at @code{:::EXIT} program\n-points.  Typically, @code{orig()} variables do not appear in the trace,\n-but are automatically created by Daikon when it matches up\n-@code{:::ENTER} and @code{:::EXIT@var{nn}} program points.\n-@xref{orig variable example}.\n+of @code{x}).  These variables appear only at @code{:::EXIT} and \n+@code{:::THROWCOMBINED} program points.  Typically, @code{orig()} ","path":"doc/daikon.texinfo","position":10,"original_position":10,"commit_id":"297304e39d8801240b6888c12726abae3fe53603","original_commit_id":"297304e39d8801240b6888c12726abae3fe53603","user":{"login":"mernst","id":121025,"avatar_url":"https://avatars.githubusercontent.com/u/121025?v=3","gravatar_id":"","url":"https://api.github.com/users/mernst","html_url":"https://github.com/mernst","followers_url":"https://api.github.com/users/mernst/followers","following_url":"https://api.github.com/users/mernst/following{/other_user}","gists_url":"https://api.github.com/users/mernst/gists{/gist_id}","starred_url":"https://api.github.com/users/mernst/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mernst/subscriptions","organizations_url":"https://api.github.com/users/mernst/orgs","repos_url":"https://api.github.com/users/mernst/repos","events_url":"https://api.github.com/users/mernst/events{/privacy}","received_events_url":"https://api.github.com/users/mernst/received_events","type":"User","site_admin":false},"body":"Request: please do not re-fill paragraphs.  When you refill a paragraph, it changes many lines in the diff, making it hard to determine what real changes you made.  It doesn't matter if the .texinfo file (which will be processed by Texinfo to make the manual) doesn't have perfectly filled paragraphs, because only developers will read it -- and those developers will care more that the diffs are small and easy to read.\r\n\r\nCould you please un-fill the paragraphs that you reformatted?","created_at":"2016-08-23T22:40:55Z","updated_at":"2016-08-23T22:40:55Z","html_url":"https://github.com/codespecs/daikon/pull/56#discussion_r75965111","pull_request_url":"https://api.github.com/repos/codespecs/daikon/pulls/56","_links":{"self":{"href":"https://api.github.com/repos/codespecs/daikon/pulls/comments/75965111"},"html":{"href":"https://github.com/codespecs/daikon/pull/56#discussion_r75965111"},"pull_request":{"href":"https://api.github.com/repos/codespecs/daikon/pulls/56"}}},"pull_request":{"url":"https://api.github.com/repos/codespecs/daikon/pulls/56","id":71843240,"html_url":"https://github.com/codespecs/daikon/pull/56","diff_url":"https://github.com/codespecs/daikon/pull/56.diff","patch_url":"https://github.com/codespecs/daikon/pull/56.patch","issue_url":"https://api.github.com/repos/codespecs/daikon/issues/56","number":56,"state":"open","locked":false,"title":"Feature exception handling","user":{"login":"rarworld","id":98138,"avatar_url":"https://avatars.githubusercontent.com/u/98138?v=3","gravatar_id":"","url":"https://api.github.com/users/rarworld","html_url":"https://github.com/rarworld","followers_url":"https://api.github.com/users/rarworld/followers","following_url":"https://api.github.com/users/rarworld/following{/other_user}","gists_url":"https://api.github.com/users/rarworld/gists{/gist_id}","starred_url":"https://api.github.com/users/rarworld/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rarworld/subscriptions","organizations_url":"https://api.github.com/users/rarworld/orgs","repos_url":"https://api.github.com/users/rarworld/repos","events_url":"https://api.github.com/users/rarworld/events{/privacy}","received_events_url":"https://api.github.com/users/rarworld/received_events","type":"User","site_admin":false},"body":"I implemented with this commits the exception handling Feature.\r\n\r\nHow we did it.\r\nFirst we create for each occurrence of the throw-command a PPT, in the same way daikon does it for returns.\r\nThe PPTs are from ppt-type subexit and the suffix is :::THROWNN.\r\n\r\nWith the parameter --exception-handling we can enable the delegated Exceptions support, the throw-command is always active.\r\nWe catch the delegated exceptions by encapsulate the whole method-body with an try- block with one\r\nhandle-block at the end of the method. For every throw-command in the method, we interrupt the try-block by creating multiple try-blocks all with the same handle-block. In the handle-block we create a PPT with the suffix :::THROWS also from ppt-type subexit, which collect all uncaught ecxceptions of this method.\r\n\r\nDaikon then combines all :::THROW*-PPTs to a new :::THROWSCOMBINED-PPT from ppt-type exit.\r\nThe Annotater then prints the :::THROWSCOMBINED-PPT as the exceptional_bahavior-block.\r\nIt turned out, it works pretty good.\r\nAlso the AnnotateNullable-tool works with exception handling.\r\n\r\nThis approach has one failure.\r\nis an exception thrown in an try-catch block, the method logs two 3 PPTs. Enter-PPT, THROW-PPT and EXIT-PPT.\r\n\r\nI changed the Instrument-class, added testcases in chicory-tests and daikon-test/ExceptionHandling and the Annotate-tool.","created_at":"2016-05-30T01:01:11Z","updated_at":"2016-08-23T22:40:55Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a77c59c7e7ffa72c05192dd285d266fb2c8f9c27","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/codespecs/daikon/pulls/56/commits","review_comments_url":"https://api.github.com/repos/codespecs/daikon/pulls/56/comments","review_comment_url":"https://api.github.com/repos/codespecs/daikon/pulls/comments{/number}","comments_url":"https://api.github.com/repos/codespecs/daikon/issues/56/comments","statuses_url":"https://api.github.com/repos/codespecs/daikon/statuses/297304e39d8801240b6888c12726abae3fe53603","head":{"label":"rarworld:FeatureExceptionHandling","ref":"FeatureExceptionHandling","sha":"297304e39d8801240b6888c12726abae3fe53603","user":{"login":"rarworld","id":98138,"avatar_url":"https://avatars.githubusercontent.com/u/98138?v=3","gravatar_id":"","url":"https://api.github.com/users/rarworld","html_url":"https://github.com/rarworld","followers_url":"https://api.github.com/users/rarworld/followers","following_url":"https://api.github.com/users/rarworld/following{/other_user}","gists_url":"https://api.github.com/users/rarworld/gists{/gist_id}","starred_url":"https://api.github.com/users/rarworld/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rarworld/subscriptions","organizations_url":"https://api.github.com/users/rarworld/orgs","repos_url":"https://api.github.com/users/rarworld/repos","events_url":"https://api.github.com/users/rarworld/events{/privacy}","received_events_url":"https://api.github.com/users/rarworld/received_events","type":"User","site_admin":false},"repo":{"id":59015237,"name":"daikon","full_name":"rarworld/daikon","owner":{"login":"rarworld","id":98138,"avatar_url":"https://avatars.githubusercontent.com/u/98138?v=3","gravatar_id":"","url":"https://api.github.com/users/rarworld","html_url":"https://github.com/rarworld","followers_url":"https://api.github.com/users/rarworld/followers","following_url":"https://api.github.com/users/rarworld/following{/other_user}","gists_url":"https://api.github.com/users/rarworld/gists{/gist_id}","starred_url":"https://api.github.com/users/rarworld/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rarworld/subscriptions","organizations_url":"https://api.github.com/users/rarworld/orgs","repos_url":"https://api.github.com/users/rarworld/repos","events_url":"https://api.github.com/users/rarworld/events{/privacy}","received_events_url":"https://api.github.com/users/rarworld/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/rarworld/daikon","description":"Dynamic detection of likely invariants","fork":true,"url":"https://api.github.com/repos/rarworld/daikon","forks_url":"https://api.github.com/repos/rarworld/daikon/forks","keys_url":"https://api.github.com/repos/rarworld/daikon/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rarworld/daikon/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rarworld/daikon/teams","hooks_url":"https://api.github.com/repos/rarworld/daikon/hooks","issue_events_url":"https://api.github.com/repos/rarworld/daikon/issues/events{/number}","events_url":"https://api.github.com/repos/rarworld/daikon/events","assignees_url":"https://api.github.com/repos/rarworld/daikon/assignees{/user}","branches_url":"https://api.github.com/repos/rarworld/daikon/branches{/branch}","tags_url":"https://api.github.com/repos/rarworld/daikon/tags","blobs_url":"https://api.github.com/repos/rarworld/daikon/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rarworld/daikon/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rarworld/daikon/git/refs{/sha}","trees_url":"https://api.github.com/repos/rarworld/daikon/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rarworld/daikon/statuses/{sha}","languages_url":"https://api.github.com/repos/rarworld/daikon/languages","stargazers_url":"https://api.github.com/repos/rarworld/daikon/stargazers","contributors_url":"https://api.github.com/repos/rarworld/daikon/contributors","subscribers_url":"https://api.github.com/repos/rarworld/daikon/subscribers","subscription_url":"https://api.github.com/repos/rarworld/daikon/subscription","commits_url":"https://api.github.com/repos/rarworld/daikon/commits{/sha}","git_commits_url":"https://api.github.com/repos/rarworld/daikon/git/commits{/sha}","comments_url":"https://api.github.com/repos/rarworld/daikon/comments{/number}","issue_comment_url":"https://api.github.com/repos/rarworld/daikon/issues/comments{/number}","contents_url":"https://api.github.com/repos/rarworld/daikon/contents/{+path}","compare_url":"https://api.github.com/repos/rarworld/daikon/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rarworld/daikon/merges","archive_url":"https://api.github.com/repos/rarworld/daikon/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rarworld/daikon/downloads","issues_url":"https://api.github.com/repos/rarworld/daikon/issues{/number}","pulls_url":"https://api.github.com/repos/rarworld/daikon/pulls{/number}","milestones_url":"https://api.github.com/repos/rarworld/daikon/milestones{/number}","notifications_url":"https://api.github.com/repos/rarworld/daikon/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rarworld/daikon/labels{/name}","releases_url":"https://api.github.com/repos/rarworld/daikon/releases{/id}","deployments_url":"https://api.github.com/repos/rarworld/daikon/deployments","created_at":"2016-05-17T11:06:49Z","updated_at":"2016-05-17T11:07:15Z","pushed_at":"2016-07-09T10:06:22Z","git_url":"git://github.com/rarworld/daikon.git","ssh_url":"git@github.com:rarworld/daikon.git","clone_url":"https://github.com/rarworld/daikon.git","svn_url":"https://github.com/rarworld/daikon","homepage":"http://plse.cs.washington.edu/daikon/","size":541381,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"FeatureExceptionHandling"}},"base":{"label":"codespecs:master","ref":"master","sha":"7d97dbcbca81315574012946210736c2fdc3e181","user":{"login":"codespecs","id":12882755,"avatar_url":"https://avatars.githubusercontent.com/u/12882755?v=3","gravatar_id":"","url":"https://api.github.com/users/codespecs","html_url":"https://github.com/codespecs","followers_url":"https://api.github.com/users/codespecs/followers","following_url":"https://api.github.com/users/codespecs/following{/other_user}","gists_url":"https://api.github.com/users/codespecs/gists{/gist_id}","starred_url":"https://api.github.com/users/codespecs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codespecs/subscriptions","organizations_url":"https://api.github.com/users/codespecs/orgs","repos_url":"https://api.github.com/users/codespecs/repos","events_url":"https://api.github.com/users/codespecs/events{/privacy}","received_events_url":"https://api.github.com/users/codespecs/received_events","type":"Organization","site_admin":false},"repo":{"id":37424689,"name":"daikon","full_name":"codespecs/daikon","owner":{"login":"codespecs","id":12882755,"avatar_url":"https://avatars.githubusercontent.com/u/12882755?v=3","gravatar_id":"","url":"https://api.github.com/users/codespecs","html_url":"https://github.com/codespecs","followers_url":"https://api.github.com/users/codespecs/followers","following_url":"https://api.github.com/users/codespecs/following{/other_user}","gists_url":"https://api.github.com/users/codespecs/gists{/gist_id}","starred_url":"https://api.github.com/users/codespecs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codespecs/subscriptions","organizations_url":"https://api.github.com/users/codespecs/orgs","repos_url":"https://api.github.com/users/codespecs/repos","events_url":"https://api.github.com/users/codespecs/events{/privacy}","received_events_url":"https://api.github.com/users/codespecs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/codespecs/daikon","description":"Dynamic detection of likely invariants","fork":false,"url":"https://api.github.com/repos/codespecs/daikon","forks_url":"https://api.github.com/repos/codespecs/daikon/forks","keys_url":"https://api.github.com/repos/codespecs/daikon/keys{/key_id}","collaborators_url":"https://api.github.com/repos/codespecs/daikon/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/codespecs/daikon/teams","hooks_url":"https://api.github.com/repos/codespecs/daikon/hooks","issue_events_url":"https://api.github.com/repos/codespecs/daikon/issues/events{/number}","events_url":"https://api.github.com/repos/codespecs/daikon/events","assignees_url":"https://api.github.com/repos/codespecs/daikon/assignees{/user}","branches_url":"https://api.github.com/repos/codespecs/daikon/branches{/branch}","tags_url":"https://api.github.com/repos/codespecs/daikon/tags","blobs_url":"https://api.github.com/repos/codespecs/daikon/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/codespecs/daikon/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/codespecs/daikon/git/refs{/sha}","trees_url":"https://api.github.com/repos/codespecs/daikon/git/trees{/sha}","statuses_url":"https://api.github.com/repos/codespecs/daikon/statuses/{sha}","languages_url":"https://api.github.com/repos/codespecs/daikon/languages","stargazers_url":"https://api.github.com/repos/codespecs/daikon/stargazers","contributors_url":"https://api.github.com/repos/codespecs/daikon/contributors","subscribers_url":"https://api.github.com/repos/codespecs/daikon/subscribers","subscription_url":"https://api.github.com/repos/codespecs/daikon/subscription","commits_url":"https://api.github.com/repos/codespecs/daikon/commits{/sha}","git_commits_url":"https://api.github.com/repos/codespecs/daikon/git/commits{/sha}","comments_url":"https://api.github.com/repos/codespecs/daikon/comments{/number}","issue_comment_url":"https://api.github.com/repos/codespecs/daikon/issues/comments{/number}","contents_url":"https://api.github.com/repos/codespecs/daikon/contents/{+path}","compare_url":"https://api.github.com/repos/codespecs/daikon/compare/{base}...{head}","merges_url":"https://api.github.com/repos/codespecs/daikon/merges","archive_url":"https://api.github.com/repos/codespecs/daikon/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/codespecs/daikon/downloads","issues_url":"https://api.github.com/repos/codespecs/daikon/issues{/number}","pulls_url":"https://api.github.com/repos/codespecs/daikon/pulls{/number}","milestones_url":"https://api.github.com/repos/codespecs/daikon/milestones{/number}","notifications_url":"https://api.github.com/repos/codespecs/daikon/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/codespecs/daikon/labels{/name}","releases_url":"https://api.github.com/repos/codespecs/daikon/releases{/id}","deployments_url":"https://api.github.com/repos/codespecs/daikon/deployments","created_at":"2015-06-14T18:40:55Z","updated_at":"2016-08-13T20:06:19Z","pushed_at":"2016-08-23T15:56:41Z","git_url":"git://github.com/codespecs/daikon.git","ssh_url":"git@github.com:codespecs/daikon.git","clone_url":"https://github.com/codespecs/daikon.git","svn_url":"https://github.com/codespecs/daikon","homepage":"http://plse.cs.washington.edu/daikon/","size":550629,"stargazers_count":15,"watchers_count":15,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":14,"mirror_url":null,"open_issues_count":17,"forks":14,"open_issues":17,"watchers":15,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/codespecs/daikon/pulls/56"},"html":{"href":"https://github.com/codespecs/daikon/pull/56"},"issue":{"href":"https://api.github.com/repos/codespecs/daikon/issues/56"},"comments":{"href":"https://api.github.com/repos/codespecs/daikon/issues/56/comments"},"review_comments":{"href":"https://api.github.com/repos/codespecs/daikon/pulls/56/comments"},"review_comment":{"href":"https://api.github.com/repos/codespecs/daikon/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/codespecs/daikon/pulls/56/commits"},"statuses":{"href":"https://api.github.com/repos/codespecs/daikon/statuses/297304e39d8801240b6888c12726abae3fe53603"}}}}
{"actor":{"display_login":"mernst"}}