b80fe99eeb219cc448582650267f49a916011edf
8 if (!defined($warns)) {
9 print "usage: $0 <warns.txt>\n";
13 my $db = DBI
->connect("dbi:SQLite:smatch_db.sqlite", "", "", {AutoCommit
=> 0});
14 $db->do("PRAGMA synchronous = OFF");
15 $db->do("PRAGMA cache_size = 800000");
16 $db->do("PRAGMA journal_mode = OFF");
18 $db->do("delete from type_size;");
20 my ($file_and_line, $file, $dummy, $struct_bit, $member, $size);
22 open(WARNS
, "<$warns");
24 if (!($_ =~ / allocated_buf_size /)) {
28 # lib/prio_heap.c:12 heap_init() info: '(struct ptr_heap)->ptrs' allocated_buf_size 4096
33 if ($_ =~ /\(struct /) {
34 ($file_and_line, $dummy, $dummy, $struct_bit, $member, $dummy, $size) = split(/ /, $_);
35 $member = "(struct $member";
37 ($file_and_line, $dummy, $dummy, $member, $dummy, $size) = split(/ /, $_);
39 ($file, $dummy) = split(/:/, $file_and_line);
41 if (!defined($size)) {
45 $db->do("insert into type_size values ('$file', '$member', '$size')\n");