rem: switch (AHIClassData->error) { case 0: *msg->opg_Storage = (ULONG) "No error"; break;  default: if (Fault(AHIClassData->error, NULL, AHIClassData->error_message, sizeof (AHIClassData->error_message)) > 0) { *msg->opg_Storage = (ULONG) AHIClassData->error_message; } else { *msg->opg_Storage = (ULONG) "Unknown error"; } break; }
add: *msg->opg_Storage = get_error_message(AHIClassData);
context: MethodGet(Class* class, Object* object, struct opGet* msg){  struct AHIClassBase* AHIClassBase = (struct AHIClassBase*) class->cl_UserData;  struct AHIClassData* AHIClassData = (struct AHIClassData*) INST_DATA(class, object);  switch (msg->opg_AttrID)  {    case AHIA_Title:      *msg->opg_Storage = (ULONG) "AHI Root Class";      break;    case AHIA_Description:      *msg->opg_Storage = (ULONG) "The mother of all AHI classes.";      break;          case AHIA_DescriptionURL:      *msg->opg_Storage = (ULONG) "http://www.lysator.liu.se/ahi/";      break;          case AHIA_Author:      *msg->opg_Storage = (ULONG) "Martin Blom";      break;          case AHIA_Copyright:      *msg->opg_Storage = (ULONG) "2004 Martin Blom";      break;          case AHIA_Version:      *msg->opg_Storage = (ULONG) VERS;      break;          case AHIA_Annotation:      *msg->opg_Storage = 0;      break;    case AHIA_Locale:      *msg->opg_Storage = (ULONG) AHIClassData->locale;      break;    case AHIA_Owner:      *msg->opg_Storage = (ULONG) AHIClassData->owner;      break;    case AHIA_InterruptSafe:      *msg->opg_Storage = AHIClassData->interrupt_safe;      break;    case AHIA_Error:      *msg->opg_Storage = AHIClassData->error;      break;    case AHIA_ErrorMessage:      switch (AHIClassData->error) {	case 0:	  *msg->opg_Storage = (ULONG) "No error";	  break;	  	default:	  if (Fault(AHIClassData->error,		    NULL,		    AHIClassData->error_message,		    sizeof (AHIClassData->error_message)) > 0) {	    *msg->opg_Storage = (ULONG) AHIClassData->error_message;	  }	  else {	    *msg->opg_Storage = (ULONG) "Unknown error";	  }	  break;      }      break;          case AHIA_UserData:      *msg->opg_Storage = AHIClassData->user_data;      break;    case AHIA_ParameterArray:    case AHIA_Parameters:      *msg->opg_Storage = 0;      break;          case ICA_TARGET:    case ICA_MAP:    case ICSPECIAL_CODE:      GetAttr(msg->opg_AttrID, AHIClassData->model_class, msg->opg_Storage);      break;	    default:      return FALSE;  }  return TRUE;}