语义代码克隆检测:我们真的做到了吗?
语义代码克隆检测:我们真的做到了吗?
[提交日期:2026年6月24日]
作者: 徐志伟,邓伟贤,刘旭阳,彭晓琳,高佳宝,邱天,万海,赵希斌
摘要: 代码克隆检测已被广泛研究数十年,近期的方法开始在基准数据集上对语义(Type-4)克隆报告出异常高的性能。然而,目前尚不清楚这些结果是反映了程序间语义等价的真实捕捉能力,还是仅仅利用了数据集特有的模式。
本文首次系统性地实证研究了当前最先进的语义代码克隆检测器在基准评估环境以外的泛化能力。受克隆类型间固有包含关系的启发,我们提出一个由源自Type-2和Type-3克隆变体的八种转换算子组成的克隆算子框架。利用这些算子,我们构建出分布偏移但语义等价的Type-4克隆实例,并在真实世界数据集BigCloneBench上评估了11种代表性检测器,它们涵盖基于token、基于树和基于图的范式。我们的结果显示,尽管这些方法在基准测试中表现强劲,但在所有评估方法中均出现了显著的性能下降。进一步分析表明,现有检测器严重依赖基于词汇和结构线索的快捷学习(shortcut learning),而非鲁棒的语义理解。我们的发现表明,当前最先进的语义代码克隆检测器在真实场景中泛化能力有限,为未来研究指明了重要方向。
主题分类: 软件工程 (cs.SE)
引用本文: arXiv:2606.25272 [cs.SE] (或该版本的 arXiv:2606.25272v1 [cs.SE])
https://doi.org/10.48550/arXiv.2606.25272
提交历史
来自:徐志伟 [查看邮箱]
[v1] 2026年6月24日周三 01:11:40 UTC (464 KB)