void CompassAnalyses::AllowedFunctions::Traversal:: visit(SgNode* node) { switch( node->variantT() ) { case V_SgFunctionRefExp: { SgFunctionRefExp *fref = isSgFunctionRefExp(node); ROSE_ASSERT(fref != NULL); SgFunctionDeclaration *fdecl = fref->get_symbol()->get_declaration(); this->functionDeclarationHandler( fdecl, fref->getFilenameString(), fref ); } break; //case V_SgFunctionRefExp case V_SgMemberFunctionRefExp: { SgMemberFunctionRefExp *fref = isSgMemberFunctionRefExp(node); ROSE_ASSERT(fref != NULL); SgFunctionDeclaration *fdecl = fref->get_symbol()->get_declaration(); this->functionDeclarationHandler( fdecl, fref->getFilenameString(), fref ); } break; //case V_SgMemberFunctionRefExp default: break; } //switch( node->variantT() ) return; } //End of the visit function.