#!/usr/bin/perl

use smatch;
my $tmp;
my $func_in;
my $func_called;

while (my $data = get_data()) {
	if ($data =~ /^function_decl (.*?)function_decl\((.*?)W\)/) {
		$func_in = "$2W";
	} elsif ($data =~ /^function_decl (.*?)function_decl\((.*?)\)/) {
		$func_in = "No function";
	}

	if (not $func_in =~ /^No function$/) {
		$tmp = $data;
		while ($tmp =~ /call_expr\(\(addr_expr function_decl\(([^\)]*?)\)(.*)/) {
			$func_called = $1;
			$tmp = $2;
			if ($func_called =~ /(.*?)A$/) {
				print get_filename(), " ", get_lineno(), " $func_in: call to $func_called\n";
			}
		}
	}
}
