fn check_matcher_core<'tt>(
    sess: &ParseSess,
    def: &Item,
    first_sets: &FirstSets<'tt>,
    matcher: &'tt [TokenTree],
    follow: &TokenSet<'tt>
) -> TokenSet<'tt>