Christoph Georg Steindl,
"Program Slicing (1) - Data Structures and Computation of Control Flow Information"
, 3-1998
Original Titel:
Program Slicing (1) - Data Structures and Computation of Control Flow Information
Sprache des Titels:
Englisch
Original Kurzfassung:
We implemented a program slicing tool for static forward slicing of object-oriented programs written in the programming language Oberon-2 [MöWi91]. Program slicing [Wei84] uses control flow and data flow information to visualise dependences and assist the programmer in debugging and in program understanding. We did not restrict the language in any kind which means that we had to cope with structured types (records and arrays), global variables of any type, objects on the heap, side-effects of function calls, nested procedures, recursion, dynamic binding due to type-bound procedures (methods) and procedure variables (function pointers), and modules.
This technical report describes the data structures that are used internally by our Slicer. Furthermore we explain the computation of control flow information.
Sprache der Kurzfassung:
Englisch
Englische Kurzfassung:
We implemented a program slicing tool for static forward slicing of object-oriented programs written in the programming language Oberon-2 [MöWi91]. Program slicing [Wei84] uses control flow and data flow information to visualise dependences and assist the programmer in debugging and in program understanding. We did not restrict the language in any kind which means that we had to cope with structured types (records and arrays), global variables of any type, objects on the heap, side-effects of function calls, nested procedures, recursion, dynamic binding due to type-bound procedures (methods) and procedure variables (function pointers), and modules.
This technical report describes the data structures that are used internally by our Slicer. Furthermore we explain the computation of control flow information.