1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fsplit-paths -fdump-tree-split-paths-details -w" } */
3 
4 
5 struct _reent
6 {
7 };
8 typedef unsigned char ichar_t;
9 struct dent
10 {
11   char *word;
12 };
13 struct flagent
14 {
15   ichar_t *strip;
16   ichar_t *affix;
17   short stripl;
18   short affl;
19 };
20 union ptr_union
21 {
22   struct flagptr *fp;
23   struct flagent *ent;
24 };
25 struct flagptr
26 {
27   union ptr_union pu;
28   int numents;
29 };
30 struct hashheader
31 {
32 };
33 extern struct dent *hashtbl;
34 extern char *hashstrings;
35 extern int hashsize;
36 extern int nodictflag;
37 extern int numsflags;
38 extern int numpflags;
39 extern struct flagent *pflaglist;
40 extern struct flagent *sflaglist;
41 int
linit()42 linit ()
43 {
44   register int i;
45   register struct dent *dp;
46   struct flagent *entry;
47   struct flagptr *ind;
48   int viazero;
49   register ichar_t *cp;
50   if (!nodictflag)
51     {
52       for (i = hashsize, dp = hashtbl; --i >= 0; dp++)
53 	{
54 	  if (dp->word == (char *) -1)
55 	    dp->word = ((void *) 0);
56 	  else
57 	    dp->word = &hashstrings[(int) (dp->word)];
58 	}
59     }
60   for (i = numsflags + numpflags, entry = sflaglist; --i >= 0; entry++)
61     {
62       if (entry->stripl)
63 	entry->strip = (ichar_t *) & hashstrings[(int) entry->strip];
64       else
65 	entry->affix = ((void *) 0);
66     }
67   for (i = numsflags, entry = sflaglist; i > 0; i--, entry++)
68     {
69       if (entry->affl == 0)
70 	{
71 	  if (ind->pu.fp == ((void *) 0))
72 	    {
73 	    }
74 	}
75     }
76   for (i = numpflags, entry = pflaglist; i > 0; i--, entry++)
77     {
78       if (entry->affl == 0)
79 	{
80 	  while (ind->numents == 0 && ind->pu.fp != ((void *) 0))
81 	    {
82 	      if (*cp == 0)
83 		{
84 		}
85 	    }
86 	}
87       if (!viazero && ind->numents >= 4
88 	  && strcmp ((char *) (entry->affix),
89 		     (char *) (ind->pu.ent->affix)) != 0)
90 	{
91 	}
92     }
93 }
94 /* { dg-final { scan-tree-dump-times "Duplicating join block" 2 "split-paths" } } */
95