Вот очень простой способ, который может зайти слишком далеко при удалении информации (т. Е. Может привести к слишком большому количеству ложных срабатываний): заменить каждый идентификатор, который не является ключевым словом, некоторым фиксированным именем.Таким образом, вы получите
for (int DUMMY = DUMMY; DUMMY<5; DUMMY++) {
DUMMY(DUMMY);
}
(при условии, что вы действительно имели в виду o
вместо 0
в части инициализации for
-loop).
Если вы получитеС этим можно связать огромное количество ложных срабатываний, после чего вы можете обработать их, например, посмотрев, какая часть DUMMY действительно соответствует одному и тому же идентификатору в обеих половинах совпадения или, по крайней мере, идентификаторам, которые соответствуютдва.
Чтобы добиться большего успеха, вам, вероятно, потребуется до некоторой степени проанализировать код.Это было бы намного больше работы.