[BACK]Return to test-wchar.c CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Diff for /mandoc/test-wchar.c between version 1.1 and 1.4

version 1.1, 2014/08/16 19:00:01 version 1.4, 2016/07/31 09:29:13
Line 15 
Line 15 
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.   * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */   */
   
   #if defined(__linux__) || defined(__MINT__)
   #define _GNU_SOURCE /* wcwidth() */
   #endif
   
 #include <locale.h>  #include <locale.h>
 #include <stdio.h>  #include <stdio.h>
 #include <wchar.h>  #include <wchar.h>
Line 28  main(void)
Line 32  main(void)
   
         if (setlocale(LC_ALL, "") == NULL) {          if (setlocale(LC_ALL, "") == NULL) {
                 fputs("setlocale(LC_ALL, \"\") failed\n", stderr);                  fputs("setlocale(LC_ALL, \"\") failed\n", stderr);
                 return(1);                  return 1;
         }          }
   
         if (setlocale(LC_CTYPE, "en_US.UTF-8") == NULL) {          if (setlocale(LC_CTYPE, UTF8_LOCALE) == NULL) {
                 fputs("setlocale(LC_CTYPE, \"en_US.UTF-8\") failed\n",                  fprintf(stderr, "setlocale(LC_CTYPE, \"%s\") failed\n",
                     stderr);                      UTF8_LOCALE);
                 return(1);                  return 1;
         }          }
   
         if (sizeof(wchar_t) < 4) {          if (sizeof(wchar_t) < 4) {
                 fprintf(stderr, "wchar_t is only %zu bytes\n",                  fprintf(stderr, "wchar_t is only %zu bytes\n",
                     sizeof(wchar_t));                      sizeof(wchar_t));
                 return(1);                  return 1;
         }          }
   
         if ((width = wcwidth(L' ')) != 1) {          if ((width = wcwidth(L' ')) != 1) {
                 fprintf(stderr, "wcwidth(L' ') returned %d\n", width);                  fprintf(stderr, "wcwidth(L' ') returned %d\n", width);
                 return(1);                  return 1;
         }          }
   
         dup2(STDERR_FILENO, STDOUT_FILENO);          dup2(STDERR_FILENO, STDOUT_FILENO);
         wc = L'*';          wc = L'*';
         if (putwchar(wc) != wc) {          if (putwchar(wc) != (wint_t)wc) {
                 fputs("bad putwchar return value\n", stderr);                  fputs("bad putwchar return value\n", stderr);
                 return(1);                  return 1;
         }          }
   
         return(0);          return 0;
 }  }

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.4

CVSweb