To "use base", you'll have to return a blessed object of your "base" from your constructor. Like this:
sub new {
return bless Gtk3::SourceView::CompletionProvider;
}
This will return a Gtk3::SourceView::CompletionProvider with the "Provider" functions added to it. See "perl -f bless" for more on blessing and what it really does.