English

ICCheck: A Portable, Language-Agnostic Tool for Synchronizing Code Clones

Software Engineering 2026-03-18 v2

Abstract

Inconsistent modifications to code clones can lead to software defects. Many approaches exist to support consistent modifications based on clone detection and/or change pattern extraction. However, no tool currently supports synchronization of code clones across diverse programming languages and development environments. We propose ICCheck, a tool designed to be language-agnostic and portable across various environments. By leveraging an existing language-agnostic clone search technique and limiting the tool's external dependency to an existing Git repository, we developed a tool that can assist in synchronizing code clones in diverse environments. We validated the tool's functionality in multiple open-source repositories, where ICCheck was able to detect overlooked clone modifications in over 30 programming and domain-specific languages and delivered interactive suggestions within a median of 0.27 seconds in editor environments, demonstrating its language independence and responsiveness. Furthermore, by supporting the Language Server Protocol, we confirmed that ICCheck can be integrated into multiple development environments with minimal effort. ICCheck is available at https://github.com/salab/iccheck

Keywords

Cite

@article{arxiv.2504.04537,
  title  = {ICCheck: A Portable, Language-Agnostic Tool for Synchronizing Code Clones},
  author = {Motoki Abe and Shinpei Hayashi},
  journal= {arXiv preprint arXiv:2504.04537},
  year   = {2026}
}

Comments

Accepted manuscript in Science of Computer Programming

R2 v1 2026-06-28T22:48:39.056Z