rem: ACE_TCHAR *ns1ref; ACE_TCHAR *ns2ref;
add: ACE_TCHAR *ns1ref = 0; ACE_TCHAR *ns2ref = 0;
context: main (int argc, ACE_TCHAR **argv){  int c_breath = 4;  int c_depth = 4;  int o_breath = 4;  ACE_TCHAR *ns1ref;  ACE_TCHAR *ns2ref;  ACE_Get_Opt get_opts (argc, argv, ACE_LIB_TEXT ("b:d:o:p:q:"));  int c;  int i;  while ((c = get_opts ()) != -1)    switch (c)      {      case 'b':        i = ACE_OS::atoi(get_opts.opt_arg ());        if (i<2)        {          ACE_ERROR((LM_ERROR,                      ACE_LIB_TEXT ("Invalid breath, must be 2 or more\n")));          exit(1);        }        c_breath = i;        break;      case 'd':        i = ACE_OS::atoi(get_opts.opt_arg ());        if (i<2)        {          ACE_ERROR((LM_ERROR,                      ACE_LIB_TEXT ("Invalid depth, must be 2 or more\n")));          exit(1);        }        c_depth = i;        break;      case 'o':        i = ACE_OS::atoi(get_opts.opt_arg ());        if (i<2)        {          ACE_ERROR((LM_ERROR,                      ACE_LIB_TEXT ("Invalid breath, must be 2 or more\n")));          exit(1);        }        o_breath = i;        break;      case 'p':        ns1ref = get_opts.opt_arg ();        break;      case 'q':        ns2ref = get_opts.opt_arg ();        break;      default:        ACE_ERROR_RETURN ((LM_ERROR,                           ACE_LIB_TEXT ("Argument %c \n usage:  %s")                           ACE_LIB_TEXT (" [-b <breath of context tree>]")                           ACE_LIB_TEXT (" [-d <depth of context tree>]")                           ACE_LIB_TEXT (" [-o <breath of object tree>]")                           ACE_LIB_TEXT (" -p <ior of first name server>")                           ACE_LIB_TEXT (" -q <ior of second name server>")                           ACE_LIB_TEXT ("\n")),                          -1);      }  CosNaming::NamingContext_var root_context_1;  CosNaming::NamingContext_var root_context_2;  ACE_DECLARE_NEW_CORBA_ENV;  ACE_TRY_EX(bl_a)  {    // Initialize orb    CORBA::ORB_var orb = CORBA::ORB_init(argc, argv, 0 ACE_ENV_ARG_PARAMETER);    // ior's are specified for the name servers through a commandline    // option or a file.    // Resolve the first name server    CORBA::Object_var ns1obj = orb->string_to_object (                            ACE_TEXT_ALWAYS_CHAR (ns1ref) ACE_ENV_ARG_PARAMETER);    ACE_TRY_CHECK_EX(bl_a);    if (CORBA::is_nil (ns1obj.in ()))            ACE_ERROR_RETURN ((LM_ERROR,                               ACE_LIB_TEXT ("invalid ior <%s>\n"),                               ns1ref),                              -1);    root_context_1 = CosNaming::NamingContext::_narrow (ns1obj.in ()                                                        ACE_ENV_ARG_PARAMETER);    ACE_TRY_CHECK_EX(bl_a);    // Resolve the second name server    CORBA::Object_var ns2obj = orb->string_to_object (                            ACE_TEXT_ALWAYS_CHAR (ns2ref) ACE_ENV_ARG_PARAMETER);    ACE_TRY_CHECK_EX(bl_a);    if (CORBA::is_nil (ns2obj.in ()))            ACE_ERROR_RETURN ((LM_ERROR,                               ACE_LIB_TEXT ("invalid ior <%s>\n"),                               ns2ref),                              -1);    root_context_2 = CosNaming::NamingContext::_narrow (ns2obj.in ()                                                        ACE_ENV_ARG_PARAMETER);    ACE_TRY_CHECK_EX(bl_a);  }  ACE_CATCHANY