code: def test_using_project_ids_in_target_references():
      t = BoostBuild.Tester()
      __write_appender(t, "appender.jam")
      t.write(
          "jamroot.jam",
          """\
  import type ;
  type.register AAA : _a ;
  type.register BBB : _b ;
  
  import appender ;
  appender.register aaa-to-bbb : AAA : BBB ;
  
  use-project id1 : a ;
  use-project /id2 : a ;
  
  bbb b1 : /id1//target ;
  bbb b2 : /id2//target ;
  bbb b3 : /id3//target ;
  bbb b4 : a//target ;
  bbb b5 : /project-a1//target ;
  bbb b6 : /project-a2//target ;
  bbb b7 : /project-a3//target ;
  
  use-project id3 : a ;
  """,
      )
      t.write("a/source._a", "")
      t.write(
          "a/jamfile.jam",
          """\
  project project-a1 ;
  project /project-a2 ;
  import alias ;
  alias target : source._a ;
  project /project-a3 ;
  """,
      )
  
      t.run_build_system()
      t.expect_addition("bin/b%d._b" % x for x in range(1, 8))
      t.expect_nothing_more()
  
      t.cleanup()
  
imports: import BoostBuild
  import sys
label_desc: Use image node_id 2 for calling a global function with example usage: test_using_project_ids_in_target_references() without return types