code: def analyze_decl(
      decl,
      typespecs,
      knowntypespecs,
      types,
      knowntypes,
      *,
      analyze_resolved=None,
  ):
      resolved = resolve_decl(decl, typespecs, knowntypespecs, types)
      if resolved is None:
          # The decl is supposed to be skipped or ignored.
          return None
      if analyze_resolved is None:
          return resolved, None
      return analyze_resolved(resolved, decl, types, knowntypes)
  
file_path: cpython/Tools/c-analyzer/c_analyzer/analyze.py
imports: from c_parser.info import KIND, TypeDeclaration, POTSType, FuncPtr
  from c_parser.match import is_pots, is_funcptr
  from .info import IGNORED, UNKNOWN, SystemType
  from .match import is_system_type
label_desc: Use image node_id 2 for calling a global function with example usage: analyze_decl(decl, typespecs, knowntypespecs, types, knowntypes) and returns: analyze_resolved, None, resolved,  None