This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Fix -Wwrite-string warnings in cygwin.c
authorJerry D. Hedden" (via RT) <perlbug-followup@perl.org>
Mon, 23 Aug 2010 15:37:07 +0000 (08:37 -0700)
committerDavid Mitchell <davem@iabyn.com>
Wed, 25 Aug 2010 16:38:40 +0000 (17:38 +0100)
[perl #77376]
Fix the following build warnings that are now being
generated because -Wwrite-string has been turned on:

cygwin.c: In function `do_aspawn':
cygwin.c:69: warning: assignment discards qualifiers from pointer target type
cygwin.c: In function `do_spawn':
cygwin.c:91: warning: initialization discards qualifiers from pointer
target type
cygwin.c: In function `init_os_extras':
cygwin.c:544: warning: initialization discards qualifiers from pointer
target type

cygwin/cygwin.c

index 21ec98c..aa6938d 100644 (file)
@@ -51,12 +51,14 @@ do_aspawn (SV *really, void **mark, void **sp)
 {
     dTHX;
     int  rc;
 {
     dTHX;
     int  rc;
-    char **a,*tmps,**argv; 
-    STRLEN n_a; 
+    char const **a;
+    char *tmps,**argv;
+    STRLEN n_a;
 
     if (sp<=mark)
         return -1;
 
     if (sp<=mark)
         return -1;
-    a=argv=(char**) alloca ((sp-mark+3)*sizeof (char*));
+    argv=(char**) alloca ((sp-mark+3)*sizeof (char*));
+    a=(char const **)argv;
 
     while (++mark <= sp)
         if (*mark)
 
     while (++mark <= sp)
         if (*mark)
@@ -84,7 +86,8 @@ do_spawn (char *cmd)
 {
     dTHX;
     char const **a;
 {
     dTHX;
     char const **a;
-    char *s,*metachars = "$&*(){}[]'\";\\?>|<~`\n";
+    char *s;
+    char const *metachars = "$&*(){}[]'\";\\?>|<~`\n";
     const char *command[4];
 
     while (*cmd && isSPACE(*cmd))
     const char *command[4];
 
     while (*cmd && isSPACE(*cmd))
@@ -355,7 +358,7 @@ void
 init_os_extras(void)
 {
     dTHX;
 init_os_extras(void)
 {
     dTHX;
-    char *file = __FILE__;
+    char const *file = __FILE__;
     void *handle;
 
     newXS("Cwd::cwd", Cygwin_cwd, file);
     void *handle;
 
     newXS("Cwd::cwd", Cygwin_cwd, file);