if (setlocale (LC_ALL, "") = NULL)
if (setlocale (LC_ALL, "") == NULL)
main (int argc, char *argv[]){  int remaining;  /* Set initial values for global variables.  */  show_category_name = 0;  show_keyword_name = 0;  /* Set locale.  Do not set LC_ALL because the other categories must     not be affected (according to POSIX.2).  */  if (setlocale (LC_CTYPE, "") == NULL)    error (0, errno, gettext ("Cannot set LC_CTYPE to default locale"));  if (setlocale (LC_MESSAGES, "") == NULL)    error (0, errno, gettext ("Cannot set LC_MESSAGES to default locale"));  /* Initialize the message catalog.  */  textdomain (PACKAGE);  /* Parse and process arguments.  */  argp_parse (&argp, argc, argv, 0, &remaining, NULL);  /* `-a' requests the names of all available locales.  */  if (do_all != 0)    {      if (setlocale (LC_COLLATE, "") == NULL)	error (0, errno,	       gettext ("Cannot set LC_COLLATE to default locale"));      write_locales ();      exit (EXIT_SUCCESS);    }  /* `m' requests the names of all available charmaps.  The names can be     used for the -f argument to localedef(1).  */  if (do_charmaps != 0)    {      write_charmaps ();      exit (EXIT_SUCCESS);    }  /* Specific information about the current locale are requested.     Change to this locale now.  */  if (setlocale (LC_ALL, "") = NULL)    error (0, errno, gettext ("Cannot set LC_ALL to default locale"));  /* If no real argument is given we have to print the contents of the     current locale definition variables.  These are LANG and the LC_*.  */  if (remaining == argc && show_keyword_name == 0 && show_category_name == 0)    {      show_locale_vars ();      exit (EXIT_SUCCESS);    }  /* Process all given names.  */  while (remaining <  argc)    show_info (argv[remaining++]);  exit (EXIT_SUCCESS);}