{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,29]],"date-time":"2026-01-29T22:28:48Z","timestamp":1769725728554,"version":"3.49.0"},"publisher-location":"New York, NY, USA","reference-count":79,"publisher":"ACM","license":[{"start":{"date-parts":[[2023,11,30]],"date-time":"2023-11-30T00:00:00Z","timestamp":1701302400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100003816","name":"Douyin Group (HK) Limited","doi-asserted-by":"publisher","award":[""],"award-info":[{"award-number":[""]}],"id":[{"id":"10.13039\/501100003816","id-type":"DOI","asserted-by":"publisher"}]},{"name":"CCF-Huawei Populus Grove Fund","award":[""],"award-info":[{"award-number":[""]}]},{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["62002256,62232001"],"award-info":[{"award-number":["62002256,62232001"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2023,11,30]]},"DOI":"10.1145\/3611643.3616272","type":"proceedings-article","created":{"date-parts":[[2023,11,30]],"date-time":"2023-11-30T23:14:38Z","timestamp":1701386078000},"page":"237-249","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":12,"title":["Statfier: Automated Testing of Static Analyzers via Semantic-Preserving Program Transformations"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-6498-5062","authenticated-orcid":false,"given":"Huaien","family":"Zhang","sequence":"first","affiliation":[{"name":"Southern University of Science and Technology, Shenzhen, China \/ Hong Kong Polytechnic University, Hong Kong, China"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6065-6958","authenticated-orcid":false,"given":"Yu","family":"Pei","sequence":"additional","affiliation":[{"name":"Hong Kong Polytechnic University, Hong Kong, China"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3056-9962","authenticated-orcid":false,"given":"Junjie","family":"Chen","sequence":"additional","affiliation":[{"name":"Tianjin University, Tianjin, China"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8633-3372","authenticated-orcid":false,"given":"Shin Hwei","family":"Tan","sequence":"additional","affiliation":[{"name":"Concordia University, Montreal, Canada"}]}],"member":"320","published-online":{"date-parts":[[2023,11,30]]},"reference":[{"key":"e_1_3_2_2_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/3088515.3088521"},{"key":"e_1_3_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.1186\/s40411-016-0031-8"},{"key":"e_1_3_2_2_3_1","doi-asserted-by":"publisher","unstructured":"Nathaniel Ayewah and William Pugh. 2010. The Google FindBugs fixit. 241\u2013252. 10.1145\/1831708.1831738","DOI":"10.1145\/1831708.1831738"},{"key":"e_1_3_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/1251535.1251536"},{"key":"e_1_3_2_2_5_1","unstructured":"Belle. 2021. [java] RSPEC-2189 should consider do-while loop. https:\/\/community.sonarsource.com\/t\/java-rspec-2189-should-consider-do-while-loop\/55080 Retrieved 2021-12-16 from"},{"key":"e_1_3_2_2_6_1","unstructured":"Belle-PL. 2022. A false negative about NULL_DEREFERENCE. https:\/\/github.com\/facebook\/infer\/issues\/1628 Retrieved 2022-08-13 from"},{"key":"e_1_3_2_2_7_1","unstructured":"Belle-PL. 2022. MS_EXPOSE_REP cannot detect nested class. https:\/\/github.com\/spotbugs\/spotbugs\/issues\/2042 Retrieved 2022-05-06 from"},{"key":"e_1_3_2_2_8_1","volume-title":"Moving Fast with Software Verification","author":"Calcagno Cristiano","unstructured":"Cristiano Calcagno, Dino Distefano, Jeremy Dubreil, Dominik Gabi, Pieter Hooimeijer, Martino Luca, Peter O\u2019Hearn, Irene Papakonstantinou, Jim Purbrick, and Dulma Rodriguez. 2015. Moving Fast with Software Verification. In NASA Formal Methods, Klaus Havelund, Gerard Holzmann, and Rajeev Joshi (Eds.). Springer International Publishing, Cham, 3\u201311. isbn:978-3-319-17524-9"},{"key":"e_1_3_2_2_9_1","volume-title":"International Symposium on Logic-Based Program Synthesis and Transformation. Springer, 271\u2013292","author":"Casso Ignacio","year":"2020","unstructured":"Ignacio Casso, Jos\u00e9 F Morales, Pedro L\u00f3pez-Garc\u00eda, and Manuel V Hermenegildo. 2020. Testing your (static analysis) truths. In International Symposium on Logic-Based Program Synthesis and Transformation. Springer, 271\u2013292."},{"key":"e_1_3_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/3519939.3523427"},{"key":"e_1_3_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSESS47205.2019.9040853"},{"key":"e_1_3_2_2_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2017.70"},{"key":"e_1_3_2_2_13_1","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/3363562","article-title":"A survey of compiler testing","volume":"53","author":"Chen Junjie","year":"2020","unstructured":"Junjie Chen, Jibesh Patra, Michael Pradel, Yingfei Xiong, Hongyu Zhang, Dan Hao, and Lu Zhang. 2020. A survey of compiler testing. ACM Computing Surveys (CSUR) 53, 1 (2020), 1\u201336.","journal-title":"ACM Computing Surveys (CSUR)"},{"key":"e_1_3_2_2_14_1","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/3508362","article-title":"Boosting compiler testing via compiler optimization exploration","volume":"31","author":"Chen Junjie","year":"2022","unstructured":"Junjie Chen and Chenyao Suo. 2022. Boosting compiler testing via compiler optimization exploration. ACM Transactions on Software Engineering and Methodology 31, 4 (2022), 1\u201333.","journal-title":"ACM Transactions on Software Engineering and Methodology"},{"key":"e_1_3_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE48619.2023.00172"},{"key":"e_1_3_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2019.00127"},{"key":"e_1_3_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2908080.2908095"},{"key":"e_1_3_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/2970276.2970347"},{"key":"e_1_3_2_2_19_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-28891-3_12"},{"key":"e_1_3_2_2_20_1","unstructured":"Andreas Dangel. 2021. How to contribute to PMD. https:\/\/github.com\/pmd\/pmd\/blob\/49d35d0973d91dcd6526f67433ce701f2e291644\/CONTRIBUTING.md Retrieved 2021-09-06 from"},{"key":"e_1_3_2_2_21_1","unstructured":"Andreas Dangel. 2021. [java] ArrayIsStoredDirectly doesn\u2019t consider nested classes. https:\/\/github.com\/pmd\/pmd\/issues\/3613 Retrieved 2021-11-12 from"},{"key":"e_1_3_2_2_22_1","unstructured":"Andreas Dangel. 2021. [java] UnusedFormalParameter doesn\u2019t consider anonymous classes. https:\/\/github.com\/pmd\/pmd\/issues\/3618 Retrieved 2021-11-13 from"},{"key":"e_1_3_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/1287624.1287651"},{"key":"e_1_3_2_2_24_1","unstructured":"PMD Developers. 2023. PMD Source Code Analyzer. https:\/\/pmd.github.io\/ Retrieved 2023-05-30 from"},{"key":"e_1_3_2_2_25_1","unstructured":"SpotBugs Developers. 2023. SpotBugs. https:\/\/spotbugs.github.io Retrieved 2023-08-14 from"},{"key":"e_1_3_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1109\/MET.2017.2"},{"key":"e_1_3_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/3133917"},{"key":"e_1_3_2_2_28_1","unstructured":"Eclipse Foundation. 2023. Eclipse Java development tools. https:\/\/www.eclipse.org\/jdt\/ Retrieved 2023-06-16 from"},{"key":"e_1_3_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/3395363.3397385"},{"key":"e_1_3_2_2_30_1","unstructured":"Alex Groce. 2023. Regexp based tool for mutating generic source code across numerous languages. https:\/\/github.com\/agroce\/universalmutator Retrieved 2023-04-15 from"},{"key":"e_1_3_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1109\/QRS54544.2021.00032"},{"key":"e_1_3_2_2_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/3238147.3238213"},{"key":"e_1_3_2_2_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/3238147.3238213"},{"key":"e_1_3_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-92970-5_1"},{"key":"e_1_3_2_2_35_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2004.1265732"},{"key":"e_1_3_2_2_36_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2010.12.007"},{"key":"e_1_3_2_2_37_1","volume-title":"Characterizing and Improving Bug-Finders with Synthetic Bugs. In 2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER). IEEE, 971\u2013982","author":"Hu Yu","year":"2022","unstructured":"Yu Hu, Zekun Shen, and Brendan Dolan-Gavitt. 2022. Characterizing and Improving Bug-Finders with Synthetic Bugs. In 2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER). IEEE, 971\u2013982."},{"key":"e_1_3_2_2_38_1","unstructured":"Roman Ivanov. 2021. ParameterAssignment does not detect problem for Lambda parameters. https:\/\/github.com\/checkstyle\/checkstyle\/issues\/11038 Retrieved 2021-12-13 from"},{"key":"e_1_3_2_2_39_1","unstructured":"Roman Ivanov. 2023. checkstyle. http:\/\/checkstyle.sourceforge.net\/ Retrieved 2023-07-30 from"},{"key":"e_1_3_2_2_40_1","unstructured":"Roman Ivanov. 2023. How to report an issue? https:\/\/checkstyle.sourceforge.io\/report_issue.html Retrieved 2023-01-31 from"},{"key":"e_1_3_2_2_41_1","volume-title":"Software Abstractions: logic, language, and analysis","author":"Jackson Daniel","unstructured":"Daniel Jackson. 2012. Software Abstractions: logic, language, and analysis. MIT press."},{"key":"e_1_3_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2013.6606613"},{"key":"e_1_3_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/2610384.2628055"},{"key":"e_1_3_2_2_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/1287624.1287633"},{"key":"e_1_3_2_2_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/3293882.3330553"},{"key":"e_1_3_2_2_46_1","doi-asserted-by":"publisher","DOI":"10.1109\/ASE51524.2021.9678761"},{"key":"e_1_3_2_2_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/2666356.2594334"},{"key":"e_1_3_2_2_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/2858965.2814319"},{"key":"e_1_3_2_2_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/2813885.2737986"},{"key":"e_1_3_2_2_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/3533767.3534380"},{"key":"e_1_3_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1109\/APCCAS.2016.7804063"},{"key":"e_1_3_2_2_52_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-99725-4_19"},{"key":"e_1_3_2_2_53_1","volume-title":"Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion. 815\u2013816.","author":"Pacheco Carlos","unstructured":"Carlos Pacheco and Michael D Ernst. 2007. Randoop: feedback-directed random testing for Java. In Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion. 815\u2013816."},{"key":"e_1_3_2_2_54_1","doi-asserted-by":"publisher","DOI":"10.1109\/SANER48275.2020.9054853"},{"key":"e_1_3_2_2_55_1","unstructured":"Dino Distefano Peter O\u2019Hearn and Cristiano Calcagno. 2015. Open-sourcing Facebook Infer: Identify bugs before you ship. https:\/\/engineering.fb.com\/2015\/06\/11\/developer-tools\/open-sourcing-facebook-infer-identify-bugs-before-you-ship\/ Retrieved 2015-06-11 from"},{"key":"e_1_3_2_2_56_1","unstructured":"phoenix384. 2020. [java] CompareObjectsWithEqualsRule: False positive with Enums. https:\/\/github.com\/pmd\/pmd\/issues\/2716 Retrieved 2020-08-19 from"},{"key":"e_1_3_2_2_57_1","unstructured":"PMD. 2021. HardcodedCryptoKey.xml. https:\/\/github.com\/pmd\/pmd\/blob\/ac26d3dc6d7c121de72e6e7ddc1769caf8986e85\/pmd-java\/src\/test\/resources\/net\/sourceforge\/pmd\/lang\/java\/rule\/security\/xml\/HardCodedCryptoKey.xml"},{"key":"e_1_3_2_2_58_1","unstructured":"PMD. 2021. [java] HardcodedCryptoKey false negative with variable assignments. https:\/\/github.com\/pmd\/pmd\/issues\/3368#issuecomment-872794683"},{"key":"e_1_3_2_2_59_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2021.106552"},{"key":"e_1_3_2_2_60_1","unstructured":"sa-research. 2023. Statfier Homepage. https:\/\/sa-research.github.io\/#timeout Retrieved 2023-06-28 from"},{"key":"e_1_3_2_2_61_1","doi-asserted-by":"publisher","DOI":"10.1145\/3188720"},{"key":"e_1_3_2_2_62_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICST.2011.51"},{"key":"e_1_3_2_2_63_1","doi-asserted-by":"publisher","DOI":"10.1109\/VLHCC.2017.8103456"},{"key":"e_1_3_2_2_64_1","unstructured":"SonarSource. 2023. Sonarqube code quality and code security. https:\/\/www.sonarqube.org\/ Retrieved 2023-08-14 from"},{"key":"e_1_3_2_2_65_1","doi-asserted-by":"publisher","DOI":"10.1145\/2983990.2984038"},{"key":"e_1_3_2_2_66_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICST.2012.106"},{"key":"e_1_3_2_2_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/3368826.3377927"},{"key":"e_1_3_2_2_68_1","doi-asserted-by":"publisher","DOI":"10.1109\/APSEC.2010.39"},{"key":"e_1_3_2_2_69_1","doi-asserted-by":"publisher","DOI":"10.1145\/3293882.3330567"},{"key":"e_1_3_2_2_70_1","doi-asserted-by":"publisher","DOI":"10.1145\/3377811.3380343"},{"key":"e_1_3_2_2_71_1","unstructured":"vanguard 1024. 2022. False positive about the rule UseStringBufferForStringAppends. https:\/\/github.com\/pmd\/pmd\/issues\/4078 Retrieved 2022-08-13 from"},{"key":"e_1_3_2_2_72_1","doi-asserted-by":"publisher","DOI":"10.1145\/3377811.3380380"},{"key":"e_1_3_2_2_73_1","unstructured":"wuchiuwong. 2020. Sonarqube and PMD. https:\/\/github.com\/wuchiuwong\/Diff-Testing-01\/blob\/master\/RulePair\/Sonarqube Retrieved 2020-06-18 from"},{"key":"e_1_3_2_2_74_1","doi-asserted-by":"publisher","DOI":"10.1109\/TR.2020.2972266"},{"key":"e_1_3_2_2_75_1","doi-asserted-by":"publisher","DOI":"10.1145\/3597926.3598087"},{"key":"e_1_3_2_2_76_1","doi-asserted-by":"publisher","DOI":"10.1145\/3238147.3238187"},{"key":"e_1_3_2_2_77_1","doi-asserted-by":"publisher","DOI":"10.1145\/3597926.3598077"},{"key":"e_1_3_2_2_78_1","unstructured":"Zustin. 2021. New Java versions lead to FN about the rule DMI_INVOKING_TOSTRING_ON_ARRAY. https:\/\/github.com\/spotbugs\/spotbugs\/issues\/1874 Retrieved 2021-12-14 from"},{"key":"e_1_3_2_2_79_1","unstructured":"Zustin. 2022. A false positive about the rule RedundantFieldInitializer. https:\/\/github.com\/pmd\/pmd\/issues\/4070 Retrieved 2022-07-28 from"}],"event":{"name":"ESEC\/FSE '23: 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering","location":"San Francisco CA USA","acronym":"ESEC\/FSE '23","sponsor":["SIGSOFT ACM Special Interest Group on Software Engineering"]},"container-title":["Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3611643.3616272","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3611643.3616272","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T16:36:03Z","timestamp":1750178163000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3611643.3616272"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,11,30]]},"references-count":79,"alternative-id":["10.1145\/3611643.3616272","10.1145\/3611643"],"URL":"https:\/\/doi.org\/10.1145\/3611643.3616272","relation":{},"subject":[],"published":{"date-parts":[[2023,11,30]]},"assertion":[{"value":"2023-11-30","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}