package frama-c
Install
Dune Dependency
Authors
-
MMichele Alberti
-
TThibaud Antignac
-
GGergö Barany
-
PPatrick Baudin
-
TThibaut Benjamin
-
AAllan Blanchard
-
LLionel Blatter
-
FFrançois Bobot
-
RRichard Bonichon
-
QQuentin Bouillaguet
-
DDavid Bühler
-
ZZakaria Chihani
-
LLoïc Correnson
-
JJulien Crétin
-
PPascal Cuoq
-
ZZaynah Dargaye
-
BBasile Desloges
-
JJean-Christophe Filliâtre
-
PPhilippe Herrmann
-
MMaxime Jacquemin
-
FFlorent Kirchner
-
AAlexander Kogtenkov
-
TTristan Le Gall
-
JJean-Christophe Léchenet
-
MMatthieu Lemerre
-
DDara Ly
-
DDavid Maison
-
CClaude Marché
-
AAndré Maroneze
-
TThibault Martin
-
FFonenantsoa Maurica
-
MMelody Méaulle
-
BBenjamin Monate
-
YYannick Moy
-
PPierre Nigron
-
AAnne Pacalet
-
VValentin Perrelle
-
GGuillaume Petiot
-
DDario Pinto
-
VVirgile Prevosto
-
AArmand Puccetti
-
FFélix Ridoux
-
VVirgile Robles
-
JJan Rochel
-
MMuriel Roger
-
JJulien Signoles
-
NNicolas Stouls
-
KKostyantyn Vorobyov
-
BBoris Yakobowski
Maintainers
Sources
sha256=0220bc743b7da2468ceb926f331edc7ddfaa7c603ba47962de3e33c8e1e3f593
doc/frama-c.kernel/Frama_c_kernel/Errorloc/index.html
Module Frama_c_kernel.Errorloc
The module stores the current file,line, and working directory in a hidden internal state, modified by the three following functions.
val currentLoc : unit -> Cil_datatype.Location.t
This function is used especially when the preprocessor has generated linemarkers in the output that let us know the current working directory at the time of preprocessing (option -fworking-directory for GNU CPP).
val startParsing :
string ->
(Lexing.lexbuf -> 'a) ->
Lexing.lexbuf * (Lexing.lexbuf -> 'a)
Call this function to start parsing.
val pp_context_from_file :
?ctx:int ->
?start_line:int ->
Format.formatter ->
Filepath.position ->
unit
prints the line identified by the position, together with ctx
lines of context before and after. ctx
defaults to 2. If start_line
is specified, then all lines between start_line
and pos.pos_lnum
are considered part of the error.
val pp_location : Format.formatter -> Cil_types.location -> unit
prints a readable description of a location
val parse_error :
?source:Filepath.position ->
('a, Format.formatter, unit, 'b) format4 ->
'a
Emits the corresponding error message with some location information. If given, source
will be treated as the last position of the offending expression that led to the error. It defaults to the current position of the lexbuf currently in use (i.e. startParsing
must have been called before that, and no finishParsing
call must have been done in between). The start position will be inferred from menhir's error reporting mecanisms.
Has an error been raised since the last call to clear_errors
?
Parse errors are usually fatal, but their reporting is sometimes delayed until the end of the current parsing phase. Functions that intend to ultimately fail should call clear_errors
when they start, and check had_errors
when they end, then call parse_error
if needed.