code: def test_domain_cpp_build_intersphinx(tmp_path, app, status, warning):
      origSource = """\
  .. cpp:class:: _class
  .. cpp:struct:: _struct
  .. cpp:union:: _union
  .. cpp:function:: void _function()
  .. cpp:member:: int _member
  .. cpp:var:: int _var
  .. cpp:type:: _type
  .. cpp:concept:: template<typename T> _concept
  .. cpp:enum:: _enum
  
      .. cpp:enumerator:: _enumerator
  
  .. cpp:enum-struct:: _enumStruct
  
      .. cpp:enumerator:: _scopedEnumerator
  
  .. cpp:enum-class:: _enumClass
  .. cpp:function:: void _functionParam(int param)
  .. cpp:function:: template<typename TParam> void _templateParam()
  """  # noqa: F841
      inv_file = tmp_path / "inventory"
      inv_file.write_bytes(
          b"""\
  # Sphinx inventory version 2
  # Project: C Intersphinx Test
  # Version: 
  # The remainder of this file is compressed using zlib.
  """
          + zlib.compress(
              b"""\
  _class cpp:class 1 index.html#_CPPv46$ -
  _concept cpp:concept 1 index.html#_CPPv4I0E8$ -
  _concept::T cpp:templateParam 1 index.html#_CPPv4I0E8_concept -
  _enum cpp:enum 1 index.html#_CPPv45$ -
  _enum::_enumerator cpp:enumerator 1 index.html#_CPPv4N5_enum11_enumeratorE -
  _enumClass cpp:enum 1 index.html#_CPPv410$ -
  _enumStruct cpp:enum 1 index.html#_CPPv411$ -
  _enumStruct::_scopedEnumerator cpp:enumerator 1 index.html#_CPPv4N11_enumStruct17_scopedEnumeratorE -
  _enumerator cpp:enumerator 1 index.html#_CPPv4N5_enum11_enumeratorE -
  _function cpp:function 1 index.html#_CPPv49_functionv -
  _functionParam cpp:function 1 index.html#_CPPv414_functionParami -
  _functionParam::param cpp:functionParam 1 index.html#_CPPv414_functionParami -
  _member cpp:member 1 index.html#_CPPv47$ -
  _struct cpp:class 1 index.html#_CPPv47$ -
  _templateParam cpp:function 1 index.html#_CPPv4I0E14_templateParamvv -
  _templateParam::TParam cpp:templateParam 1 index.html#_CPPv4I0E14_templateParamvv -
  _type cpp:type 1 index.html#_CPPv45$ -
  _union cpp:union 1 index.html#_CPPv46$ -
  _var cpp:member 1 index.html#_CPPv44$ -
  """
          )
      )  # noqa: W291
      app.config.intersphinx_mapping = {
          "https://localhost/intersphinx/cpp/": str(inv_file),
      }
      app.config.intersphinx_cache_limit = 0
      # load the inventory and check if it's done correctly
      normalize_intersphinx_mapping(app, app.config)
      load_mappings(app)
  
      app.build(force_all=True)
      ws = filter_warnings(warning, "index")
      assert len(ws) == 0
  
imports: import itertools
  import re
  import zlib
  import pytest
  import sphinx.domains.cpp
  from sphinx import addnodes
  from sphinx.addnodes import desc, desc_content, desc_name, desc_parameter, desc_parameterlist, desc_sig_name, desc_sig_space, desc_signature, desc_signature_line, pending_xref
  from sphinx.domains.cpp import DefinitionError, DefinitionParser, NoOldIdError, Symbol, _id_prefix, _max_id
  from sphinx.ext.intersphinx import load_mappings, normalize_intersphinx_mapping
  from sphinx.testing import restructuredtext
  from sphinx.testing.util import assert_node
  from sphinx.writers.text import STDINDENT
label_desc: Use image node_id 36 for calling a global function with example usage: test_domain_cpp_build_intersphinx(tmp_path, app, status, warning) without return types