public void CheckObjList(CM_SRC cm_src, TObj tobj) { TObj objlist[] = tobj.getTObjList(); if (objlist == null) return; for (int i = 0; i < objlist.length; i++) { TObj tmpobj = objlist[i]; CheckObjList(cm_src, tmpobj); String objname = tmpobj.getName(); String fullobjname = tmpobj.getName(); int idx; if ((idx = objname.indexOf('(')) > 0) { objname = objname.substring(0, idx).trim(); } if (tmpobj.getType() == C_FUNCTION_OBJECT) { tmpobj.setKeyValidation(100); if (objname.equals("main")) { mainflag = true; } else if (extern_main_flag(objname, fullobjname) == true) { mainflag = true; log.debug("extern find main", tmpobj.getName()); } else if (fullobjname.indexOf("(TPSVCINFO") > 0) { submainflag = true; if (!hsubmainname.containsKey(objname)) { Integer val = new Integer(0); hsubmainname.put(objname, val); } log.debug("find sub main", tmpobj.getName()); } else if (extern_sub_flag(objname, fullobjname) == true) { submainflag = true; if (!hsubmainname.containsKey(objname)) { Integer val = new Integer(0); hsubmainname.put(objname, val); } log.debug("extern find sub main", tmpobj.getName()); } else { if (!hfunname.containsKey(objname)) { // log.debug("push hash", objname); Integer val = new Integer(0); hfunname.put(objname, val); } } } if (tmpobj.getType() == C_FUNCTION_DECARE || tmpobj.getType() == C_FUNCTION_OBJECT) { TMeta mt[] = tmpobj.getTMetaList(); for (int k = 0; k < mt.length; k++) { if (mt[k].getName().equals("5100410")) { if (mt[k].getValue().startsWith("static ")) { hStaticfun.put(objname, objname); } } } } } }