Incomplete source code naturally emerges in software development: during the design phase, while evolving, testing and analyzing programs. Therefore, the ability to understand partial programs is a valuable asset. However, this problem is still unsolved in the C programming language. Difficulties stem from the fact that parsing C requires, not only syntax, but also semantic information. Furthermore, inferring types so that they respect C?s type system is a challenging task. In this paper we present a technique that lets us solve these problems. We provide a unification-based type inference capable of dealing with C intricacies. The ideas we present let us reconstruct partial C programs into complete well-typed ones. Such program recon...
This dissertation shows that complex, real programming languages can be completely formalized in the...
Abstract. This paper describes the C Intermediate Language: a highlevel representation along with a ...
We describe a framework for adding type qualifiers to a language. Type qualifiers encode a simple bu...
A inferência de tipos é uma funcionalidade comum a diversas linguagens de programação. Enquantoque,n...
International audienceThe C language does not have a specific Boolean type: Boolean values are encod...
AbstractThe C language does not have a specific Boolean type: Boolean values are encoded with intege...
Static analysis of source code is one way to find bugs and problems in large software projects. Many...
In this paper we propose a scheme that combines type inference and run-time checking to make existin...
Software verification is steadily becoming important for software developers and companies to ensure...
Porting software usually requires understanding what library functions the program being ported uses...
Type inference can be considered a form of partial evaluation that only evaluates a program with res...
In this paper we propose a scheme that combines type inference and run-time checking to make existin...
Binary analysis seeks to comprehend the behavior and semantics of commercial-off-the-shelf (COTS) ex...
This dissertation is a case study of type safety with respect to the C programming language. In shor...
The C language, despite its age, is one of the main languages in systems development. It is valued f...
This dissertation shows that complex, real programming languages can be completely formalized in the...
Abstract. This paper describes the C Intermediate Language: a highlevel representation along with a ...
We describe a framework for adding type qualifiers to a language. Type qualifiers encode a simple bu...
A inferência de tipos é uma funcionalidade comum a diversas linguagens de programação. Enquantoque,n...
International audienceThe C language does not have a specific Boolean type: Boolean values are encod...
AbstractThe C language does not have a specific Boolean type: Boolean values are encoded with intege...
Static analysis of source code is one way to find bugs and problems in large software projects. Many...
In this paper we propose a scheme that combines type inference and run-time checking to make existin...
Software verification is steadily becoming important for software developers and companies to ensure...
Porting software usually requires understanding what library functions the program being ported uses...
Type inference can be considered a form of partial evaluation that only evaluates a program with res...
In this paper we propose a scheme that combines type inference and run-time checking to make existin...
Binary analysis seeks to comprehend the behavior and semantics of commercial-off-the-shelf (COTS) ex...
This dissertation is a case study of type safety with respect to the C programming language. In shor...
The C language, despite its age, is one of the main languages in systems development. It is valued f...
This dissertation shows that complex, real programming languages can be completely formalized in the...
Abstract. This paper describes the C Intermediate Language: a highlevel representation along with a ...
We describe a framework for adding type qualifiers to a language. Type qualifiers encode a simple bu...