for (int idxAttrib = 0; idxAttrib < sizeof(SearchAttribEntryTable) / sizeof(nsMsgSearchAttribEntry); idxAttrib++)
for (int idxAttrib = 0; idxAttrib < (int)(sizeof(SearchAttribEntryTable) / sizeof(nsMsgSearchAttribEntry)); idxAttrib++)
nsresult NS_MsgGetStringForAttribute(int16 attrib, const char **string){	if (NULL == string)		return NS_ERROR_NULL_POINTER;	PRBool found = FALSE;	for (int idxAttrib = 0; idxAttrib < sizeof(SearchAttribEntryTable) / sizeof(nsMsgSearchAttribEntry); idxAttrib++)	{		// I'm using the idx's as aliases into MSG_SearchAttribute and 		// MSG_SearchOperator enums which is legal because of the way the		// enums are defined (starts at 0, numItems at end)		if (attrib == SearchAttribEntryTable[idxAttrib].attrib)		{			found = PR_TRUE;			*string = SearchAttribEntryTable[idxAttrib].attribName;			break;		}	}	// we no longer return invalid attribute. If we cannot find the string in the table, 	// then it is an arbitrary header. Return success regardless if found or not//	return (found) ? SearchError_Success : SearchError_InvalidAttribute;	return NS_OK;}