code: def test_infershape_happens_for_all_ops_in_graph():
      v = mx.sym.Variable("V")
      s = mx.sym.transpose(v)
      x = mx.sym.Variable("x")
      s2 = x + v
      s3 = s + s2
      with discard_stderr():
          try:
              # This should throw an exception as you cannot add arrays
              # with shapes [2,3] and [3,2]
              e = s3._simple_bind(
                  ctx=mx.cpu(), x=(2, 3), grad_req="null"
              )
          except:
              return
  
      assert False
  
imports: import copy
  import sys
  import os
  import logging
  import re
  import json
  import mxnet
  import numpy
  from common import assertRaises, models, TemporaryDirectory
  from mxnet.base import NotImplementedForSymbol
  from mxnet.test_utils import discard_stderr, rand_shape_nd, use_np, environment
  from mxnet.util import np_shape
  import pickle
label_desc: Use image node_id 23 for calling a global function with example usage: test_infershape_happens_for_all_ops_in_graph() without return types