code: def test_ccode_unused_array_arg_func():
      # issue 16689
      X = MatrixSymbol("X", 3, 1)
      Y = MatrixSymbol("Y", 3, 1)
      z = symbols("z", integer=True)
      name_expr = ("testBug", X[0] + X[1])
      result = codegen(
          name_expr,
          language="C",
          header=False,
          empty=False,
          argument_sequence=(X, Y, z),
      )
      source = result[0][1]
      expected = (
          '#include "testBug.h"\n'
          "#include <math.h>\n"
          "double testBug(double *X, double *Y, int z) {\n"
          "   double testBug_result;\n"
          "   testBug_result = X[0] + X[1];\n"
          "   return testBug_result;\n"
          "}\n"
      )
      assert source == expected
  
imports: from io import StringIO
  from sympy.core import symbols, Eq, pi, Catalan, Lambda, Dummy
  from sympy.core.relational import Equality
  from sympy.core.symbol import Symbol
  from sympy.functions.special.error_functions import erf
  from sympy.integrals.integrals import Integral
  from sympy.matrices import Matrix, MatrixSymbol
  from sympy.utilities.codegen import codegen, make_routine, CCodeGen, C89CodeGen, C99CodeGen, InputArgument, CodeGenError, FCodeGen, CodeGenArgumentListError, OutputArgument, InOutArgument
  from sympy.testing.pytest import raises
  from sympy.utilities.lambdify import implemented_function
label_desc: Use image node_id 27 for calling a global function with example usage: test_ccode_unused_array_arg_func() without return types