middle-end: Fix stalled swapped condition code value [PR115836]
[official-gcc.git] / gcc / testsuite / c-c++-common / analyzer / pr103217-5.c
blobd916d92eeece09527d386136b354a9f9ad045ff0
1 extern char *strdup (const char *__s)
2 __attribute__ ((__nothrow__ , __leaf__, __malloc__, __nonnull__ (1)));
4 extern void abort (void)
5 __attribute__ ((__nothrow__ , __leaf__, __noreturn__));
7 extern int getopt (int ___argc, char *const *___argv, const char *__shortopts)
8 __attribute__ ((__nothrow__ , __leaf__, __nonnull__ (2, 3)));
9 extern char *optarg;
11 extern void free (void *__ptr)
12 __attribute__ ((__nothrow__ , __leaf__));
14 struct state {
15 const char *confpath;
16 const char *host;
17 const char *port;
18 const char *state_dir_prefix;
21 static inline char *xstrdup(const char *s) {
22 char *val = strdup(s);
23 if (!val)
24 abort();
25 return val;
28 int config_init(struct state *config);
30 int main(int argc, char *argv[]) {
31 struct state state;
33 config_init(&state);
35 switch (getopt(argc, argv, "H:p:")) {
36 case 'H':
37 state.host = xstrdup(optarg);
38 break;
39 case 'p':
40 state.port = xstrdup(optarg);
41 break;
44 free((void*)state.host);
45 free((void*)state.port);
46 return 0;