Context-sensitive term rewriting system for detecting missing sequence points in C expressions시퀀스 포인트가 누락된 C 언어 수식 탐지를 위한 항 개서 시스템

Cited 0 time in webofscience Cited 0 time in scopus
  • Hit : 554
  • Download : 0
A sequence point in C is any point in the execution point of a program at which all side effects of previous evaluations performed and no side effects from subsequent evaluations have yet been performed. The end of a full expression, between of the left and right operands of the && (logical AND), || (logical OR), and comma operators are the typical sequence points of C expressions. The evaluation of C expressions missing sequence point like may produce different result from that of other compilers due to the missing sequence point. That is, C expressions missing sequence point have a potential to cause unexpected portability problems. C standard has defined those kind of expressions as undefined and proposed a method for detecting expressions missing sequence points. Also several tools such as GCC compiler and Splint provide a feature which detects errornous expression due to missing sequence points. But those are all based on C programming language specification described informally. That is, the results depend on the interpretation of C specification. We avoid the possibility of interpretation of C standard variously by choosing formal specification of C language which is mechanized by Michael Norrish. From the formal specification, we have derived reduction relations for detecting undefined expressions which is caused by missing sequence points. Base on the derived rules, we have implemented context-sensitive term rewriting system. It has revealed that existing tools providing a feature detecting missing sequence points show different results. Some of them detects less or more than expected result.
Advisors
Han, Dong-Sooresearcher한동수researcher
Description
한국과학기술원 : 전산학과,
Publisher
한국과학기술원
Issue Date
2011
Identifier
467923/325007  / 020094091
Language
eng
Description

학위논문(석사) - 한국과학기술원 : 전산학과, 2011.2, [ iv, 35 p. ]

Keywords

리덕션; 시퀀스 포인트; sequence point; undefined behavior; C programming language; reduction; C 언어

URI
http://hdl.handle.net/10203/34964
Link
http://library.kaist.ac.kr/search/detail/view.do?bibCtrlNo=467923&flag=dissertation
Appears in Collection
CS-Theses_Master(석사논문)
Files in This Item
There are no files associated with this item.

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0