LINUX.ORG.RU

История изменений

Исправление staseg, (текущая версия) :

Никакое текстовое сравнение в лоб естественно не подойдет. Нужно построить по обоим исходникам их синтаксические деревья и сравнивать их — это наиболее очевидный и, вероятно, минималистичный вариант. Он кроме переименовывания заодно откинет всякие махинации с комментариями, форматированием и т.д.

UPD. Предложенный аноном вариант с LLVM — то же самое на готовом инструменте. Но я с IR не работал, не знаю как он генерируется, но по идее должно сработать.

Исправление staseg, :

Никакое текстовое сравнение в лоб естественно не подойдет. Нужно построить по обоим исходникам их синтаксические деревья и сравнивать их — это наиболее очевидный и, вероятно, минималистичный вариант. Он кроме переименовывания заодно откинет всякие махинации с комментариями, форматированием и т.д.

UPD. Предложенный аноном вариант с LLVM — то же самое на готовом инструменте. Но я с IR не работал, не знаю как он генерируется, но по идее, должно сработать.

Исходная версия staseg, :

Никакое текстовое сравнение в лоб естественно не подойдет. Нужно построить по обоим исходникам их синтаксические деревья и сравнивать их — это наиболее очевидный и, вероятно, минималистичный вариант. Он кроме переименовывания заодно откинет всякие махинации с комментариями, форматированием и т.д.