sim/erc32: Fix a few compiler warnings
authorJiri Gaisler <jiri@gaisler.se>
Tue, 17 Mar 2015 21:02:42 +0000 (22:02 +0100)
committerMike Frysinger <vapier@gentoo.org>
Sat, 28 Mar 2015 07:05:35 +0000 (03:05 -0400)
sim/erc32/ChangeLog
sim/erc32/func.c
sim/erc32/sis.h

index 1150e1c3c710bb9a6351703dfb947ff5075dbd2a..35f07038146cdfeb486f779a1da11ae1471557b2 100644 (file)
@@ -1,3 +1,11 @@
+2015-03-28  Jiri Gaisler  <jiri@gaisler.se>
+
+       * func.c (exec_cmd): Fix old style prototype.  Mark cmd const.  Save
+       the command in a new cmdsave2 to avoid modifying.
+       (bfd_load): Fix old style prototype.  Mark fname const.
+       * sis.h (exec_cmd): Mark cmd const.
+       (bfd_load): Mark fname const.
+
 2015-03-28  Jiri Gaisler  <jiri@gaisler.se>
 
        * erc32.c (memory_iread): New function to fetch instructions.
index cef66edb055ea9a1e707b0d01843fa8015dd4292..479c5eeadbab34fc7c8411084900db99c174a65e 100644 (file)
@@ -377,21 +377,20 @@ limcalc (freq)
     }
     return lim;
 }
-    
+
 int
-exec_cmd(sregs, cmd)
-    char           *cmd;
-    struct pstate  *sregs;
+exec_cmd(struct pstate *sregs, const char *cmd)
 {
     char           *cmd1, *cmd2;
     int32           stat;
     uint32          len, i, clen, j;
     static uint32   daddr = 0;
-    char           *cmdsave;
+    char           *cmdsave, *cmdsave2 = NULL;
 
     stat = OK;
     cmdsave = strdup(cmd);
-    if ((cmd1 = strtok(cmd, " \t")) != NULL) {
+    cmdsave2 = strdup (cmd);
+    if ((cmd1 = strtok (cmdsave2, " \t")) != NULL) {
        clen = strlen(cmd1);
        if (strncmp(cmd1, "bp", clen) == 0) {
            for (i = 0; i < sregs->bptnum; i++) {
@@ -608,6 +607,8 @@ exec_cmd(sregs, cmd)
        } else
            printf("syntax error\n");
     }
+    if (cmdsave2 != NULL)
+       free(cmdsave2);
     if (cmdsave != NULL)
        free(cmdsave);
     return stat;
@@ -1035,8 +1036,7 @@ sys_halt()
 #define LOAD_ADDRESS 0
 
 int
-bfd_load(fname)
-    char           *fname;
+bfd_load (const char *fname)
 {
     asection       *section;
     bfd            *pbfd;
index d21bf49499aec5a249d93745b3757dc4cd915f79..ae39ad170083efdf56afe55fdc3d3ebf5c84ef47 100644 (file)
@@ -184,7 +184,7 @@ extern struct pstate  sregs;
 extern void    set_regi (struct pstate *sregs, int32 reg,
                          uint32 rval);
 extern void    get_regi (struct pstate *sregs, int32 reg, char *buf);
-extern int     exec_cmd (struct pstate *sregs, char *cmd);
+extern int     exec_cmd (struct pstate *sregs, const char *cmd);
 extern void    reset_stat (struct pstate  *sregs);
 extern void    show_stat (struct pstate  *sregs);
 extern void    init_bpt (struct pstate  *sregs);
@@ -202,7 +202,7 @@ extern int  check_bpt (struct pstate *sregs);
 extern void    reset_all (void);
 extern void    sys_reset (void);
 extern void    sys_halt (void);
-extern int     bfd_load (char *fname);
+extern int     bfd_load (const char *fname);
 extern double  get_time (void);
 
 /* exec.c */