File: arraylit.c

package info (click to toggle)
splint 1%3A3.1.2%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 21,012 kB
  • ctags: 23,302
  • sloc: ansic: 150,869; yacc: 3,465; sh: 3,034; makefile: 2,160; lex: 412
file content (18 lines) | stat: -rw-r--r-- 559 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# include <stdio.h>

int main (/*@unused@*/ int argc, /*@unused@*/ char **argv) /*@*/
{
  /*@observer@*/ char *unmodstr = "unmodifiable string";
  /*@exposed@*/  char  modstr[20]  = "modifiable string";
  /*@unused@*/ char modstr1[5] = "12345"; /* not enough space */
  /*@unused@*/ char modstr2[6] = "12345";
  /*@unused@*/ char modstr3[7] = "12345"; /* if +stringliteralsmaller */

  modstr1 = modstr;

  unmodstr[0] = 'U';  /* line 6; not OK */
  modstr[0] = 'M';    /* line 7; OK */

  fprintf (stderr, "mod: %s mod1: %s", modstr, modstr1);
  return 0;
}