1 /* { dg-skip-if "exceeds eBPF stack limit" { bpf-*-* } } */
2 
3 int foo;
4 typedef long unsigned int size_t;
5 typedef short unsigned int wchar_t;
6 extern int swprintf (wchar_t *wcs, size_t maxlen, const wchar_t *format, ...);
7 struct tm
8 {
9   int tm_mday;
10   int tm_mon;
11   int tm_year;
12 };
13 size_t
__strftime(wchar_t * s,size_t maxsize,const wchar_t * format,const struct tm * tim_p)14 __strftime (wchar_t * s, size_t maxsize, const wchar_t * format, const struct tm *tim_p)
15 {
16   size_t count = 0;
17   int len = 0;
18   size_t i, ctloclen;
19   unsigned long width;
20   {
21     if (foo)
22       {
23 	{
24 	  wchar_t *fmt = L"%s%.*d";
25 	  len = swprintf (&s[count], maxsize, fmt, "-", width, 0);
26 	}
27 	if ((count) >= maxsize)
28 	  return 0;
29       }
30     else
31       {
32 	len =
33 	  swprintf (&s[count], maxsize - count, L"%.2d/%.2d/%.2d", 42, 99, 0);
34 	if ((count) >= maxsize)
35 	  return 0;
36 
37       }
38   }
39 }
40