Preview

Труды Института системного программирования РАН

Расширенный поиск

Инкрементальный анализ исходного кода на языках C/C++

Аннотация

В статье описан метод построения статического анализатора кода, позволяющий существенно сократить время повторного поиска дефектов для языков С\С++. Для этого используется свойство малого отношения количества лексем из исходного файла к количеству лексем из заголовочных файлов. Метод реализован в программном продукте для среды разработки MS Visual Studio.

Об авторах

В. О. Савицкий
ИСП РАН
Россия


Д. В. Сидоров
ИСП РАН
Россия


Список литературы

1. Aho, Sethi, Ullman, Compilers: Principles, Techniques, and Tools, Addison-Wesley, 1986.

2. С.В. Сыромятников. Декларативный интерфейс поиска дефектов по синтаксическим деревьям: язык KAST.

3. MS Visual Studio precompiled headers http://msdn.microsoft.com/en-us/library/szfdksca(v=vs.71).aspx.

4. GCC Using precompiled headers http://gcc.gnu.org/onlinedocs/gcc/Precompiled-Headers.html.

5. Martin Fowler. Refactoring: Improving the Design of Existing Code.

6. Andrew Hunt and David Thomas The Pragmatic Programmer: From Journeyman to Master Addison-Wesley, Oct 1999.

7. J.-M. Larcheveque Optimal Incremental Parsing ACM Transactions on Programming Languages and Systems, Vol. 17, No 1, January 1995.

8. Tim A. Wagner and Susan L. Graham Incremental Analysis of Real Programming Languages 1997 ACM.

9. Dashing Yeh, Uwe Kastens Automatic Construction of Incremental LR(1) Parsers

10. Carlo Ghezzi, Dino Mandrioli Incremental Parsing ACM Transactions on Programming Languages and Systems, Vol. 1, No. 1, July 1979.

11. Mats Wirdn Minimal Change and Bounded Incremental Parsing


Рецензия

Для цитирования:


Савицкий В.О., Сидоров Д.В. Инкрементальный анализ исходного кода на языках C/C++. Труды Института системного программирования РАН. 2012;22.

For citation:


Savitsky V.O., Sidorov D.V. Incremental source code analysis for C/C++ languages. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2012;22. (In Russ.)



Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)