#
4b2c8123 |
|
07-Mar-2018 |
Thomas Sewell <Thomas.Sewell@data61.csiro.au> |
c-parser: VER-881: process more function calls. Two kinds of function calls were escaping the analysis. The first is simple, the ReturnFnCall statement type, which was a silly omission from before. Function calls inside initialiser statements are a more difficult problem. The simplest solution was to move the VER-881 calculation into a post-processing phase once those function calls have been moved to statement positions.
|
#
f35caa8d |
|
05-Feb-2018 |
Thomas Sewell <Thomas.Sewell@data61.csiro.au> |
JIRA VER-881: avoid complex call lvals. This scans for statement-level function calls which will have complex lvalue translations, either because their lvalues are compound expressions or because their function return type will be promoted to be stored. It treats them like expression-level function calls, with an additional call statement added (saving to a ret_ variable) and the complex lvalue step treated like an assignment.
|
#
5a367ea7 |
|
05-Dec-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Standalone C parser: scan for unhandled ASM. Adds an additional analysis option to the external C parser. This will report about any asm statements that were encountered and could not be properly handled. [NO_PROOF]
|
#
6991fab7 |
|
11-Jul-2016 |
Alejandro Gomez-Londono <alejandro.gomez@nicta.com.au> |
c-parser: allow_underscore_idents flag added + examples [VER-619][NO_PROOF]
|
#
50ab074d |
|
04-Jul-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Tweak serial code, don't reference print. The function print isn't in scope in the Isabelle environment.
|
#
20c50e46 |
|
04-Jul-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Finish serialisation code for AST.
|
#
0490bcba |
|
04-Jul-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Start of AST-dump analysis for c-parser. Give the standalone c-parser the facility to dump out its internal AST. Only half finished, I got bored writing serialisers for the many syntax datatypes. There has been some discussion about how to check whether an seL4 change impacts verification. My thought was that the obvious thing to check is the C-parser's AST. If this is unchanged, then further analyses must be unchanged.
|
#
a344d156 |
|
13-Jun-2016 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
c-parser: make munge_info available from standalone-parser Specification of file to emit to is via command-line switch. Take the opportunity to make comand-line processing be done via GetOpt library. JIRA VER-473
|
#
6b06652d |
|
16-Feb-2016 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Fix standalone parser in light of 344ed539
|
#
9827e781 |
|
09-Apr-2015 |
Michael Norrish <michael.norrish@nicta.com.au> |
Handle cpp in both standalone and Isabelle parsers Japheth's recent change (6f7c660cb) to error-reporting for the latter broke the former. Refactor code so that old and new code can coexist. Would just use Japheth's code in the purely SML version too, but it uses Isabelle/ML libraries that I can't be bothered to recreate in SML.
|
#
cc996ca9 |
|
08-Apr-2015 |
Michael Norrish <michael.norrish@nicta.com.au> |
Properly fix JIRA VER-439 The handling of local static variables is now part of a general improvement in the handling of all the "munging" that the parser does. *Munging* is the process of renaming variables so that Isabelle can cope with them. There are at least three different forms of munging at the moment: - static locals get munged so that multiple static locals (which have to be treated as globals) can co-exist with the same source name. - local variables of the same source name but different types have to be able to co-exist - variables with legitimate C names but illegal Isabelle names have to be allowed The new structure MString implements an opaque version of string designed to make it clear to the typechecker that certain strings are "munged".
|
#
9149fe41 |
|
27-Jan-2015 |
Michael Norrish <michael.norrish@nicta.com.au> |
New option to standalone parser to just test the C grammar. Without even typechecking, none of the later phases of the analysis get run.
|
#
72d54eeb |
|
21-Jan-2015 |
Michael Norrish <michael.norrish@nicta.com.au> |
Allow user to control path to C preprocessor (or not use it entirely). As per example, syntax is declare [[cpp_path="path to file"]] If the empty string is used as the value, then no preprocessor will be called. The standalone parser has also been adjusted so that you can it with --cpp=path or --nocpp options. Closes JIRA issue VER-337
|
#
2a03e81d |
|
14-Jul-2014 |
Gerwin Klein <gerwin.klein@nicta.com.au> |
Import release snapshot.
|