Gui crash with a new global variable
ID0000700: This issue was created automatically from Mantis Issue 700. Further discussion may take place here.
Id | Project | Category | View | Due Date | Updated |
---|---|---|---|---|---|
ID0000700 | Frama-C | Graphical User Interface | public | 2011-02-01 | 2011-02-07 |
Reporter | vmoyalam | Assigned To | monate | Resolution | no change required |
Priority | normal | Severity | crash | Reproducibility | always |
Platform | - | OS | - | OS Version | - |
Product Version | Frama-C Carbon-20101202-beta2 | Target Version | - | Fixed in Version | Frama-C Carbon-20101202-beta2 |
Description :
Adding a new global variable as follows :
let typ = (TInt(IInt,[])); and loc = {Lexing.dummy_pos with Lexing.pos_lnum=1; Lexing.pos_fname=file} in let var = Cil.makeGlobalVar ~logic:false ~generated:false se_var_name typ; and iv = {init=Some(Cil.makeZeroInit ~loc:(loc,loc) typ)} in var.vdecl <- (loc,loc); var.vdescr <- Some("side_effect variable for FDC analysis"); try Globals.Vars.add var iv; with Globals.Vars.AlreadyExists (,)-> Printf.printf "Error adding Global %s" var.vname
makes Frma-C crash, raising a Not Found exception, with the following command :
frama-c-gui -testGlobal ../VAL/LOT/testBug.c where "-testGlobal" is our plug-in adding a global variable.
There is no crash using the command "frama-c", the problem only appears using the interface (with "frama-c-gui").
Additional Information :
I do not know is the cause is related to a lack of information at the moment of the creation of the global variable.
The full backtrace is:
Raised at file "hashtbl.ml", line 229, characters 23-32 Called from file "src/gui/filetree.ml", line 375, characters 6-51 Called from file "hashtbl.ml", line 145, characters 8-13 Called from file "hashtbl.ml", line 148, characters 4-19 Called from file "src/project/state_builder.ml", line 625, characters 15-30 Called from file "src/value/register_gui.ml", line 385, characters 2-15 Called from file "list.ml", line 69, characters 12-15 Called from file "src/gui/design.ml", line 1054, characters 4-36 Called from file "camlinternalOO.ml", line 374, characters 12-17 Called from file "camlinternalOO.ml", line 384, characters 24-40 Called from file "src/gui/design.ml", line 1170, characters 15-33 Called from file "src/lib/extlib.ml", line 186, characters 12-15 Re-raised at file "src/lib/extlib.ml", line 191, characters 10-11 Called from file "src/gui/gtk_helper.ml", line 717, characters 8-350
Unexpected error (Not_found).
You will find the "testGlobal" plugin and the "testBug" C file in the attached tar file.