summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr65802.c
blob: 0721ca81bf654803a020247fe3c91df2b569ec04 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/* { dg-do compile } */
/* { dg-options "-O0 -fexceptions" } */
/* { dg-require-effective-target exceptions } */

#include <stdarg.h>

struct S
{
  int (*m_fn1) (void);
} a;

void
fn1 (int d, ...)
{
  va_list c;
  va_start (c, d);

  {
    int *d = va_arg (c, int *);

    int **e = &d;

    a.m_fn1 ();
  }

  a.m_fn1 ();

  va_end (c);
}