account->SetKey(((char *) ((const char *) accountKey) ) );
account->SetKey(NS_CONST_CAST(char*,(const char*)accountKey));
nsMsgAccountManager::LoadAccount(nsCAutoString& accountKey){#ifdef DEBUG_ACCOUNTMANAGER  printf("Loading preferences for account: %s\n", accountKey.GetBuffer());#endif  nsIMsgAccount *account = nsnull;  nsresult rv;  rv = nsComponentManager::CreateInstance(kMsgAccountCID,                                          nsnull,                                          nsCOMTypeInfo<nsIMsgAccount>::GetIID(),                                          (void **)&account);#ifdef DEBUG_ACCOUNTMANAGER  if (NS_FAILED(rv)) printf("Could not create an account\n");#endif    if (NS_FAILED(rv)) return nsnull;  // mscott - due to a bug in the idl compiler, SetKey takes a char * when it should  // take a const char *. but the cast *is* safe just ugly until the idl bug gets fixed  account->SetKey(((char *) ((const char *) accountKey) ) );    return account;}