aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr34138.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr34138.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr34138.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr34138.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr34138.c
new file mode 100644
index 000000000..85e8863cd
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr34138.c
@@ -0,0 +1,21 @@
+extern void free (void *__ptr);
+struct shparam
+{
+ char **p;
+ int foo;
+};
+static struct shparam shellparam;
+inline void freeparam (volatile struct shparam *param, char **ap)
+{
+ free ((void *) (*ap));
+ free ((void *) (param->p));
+}
+void dotcmd (char **p)
+{
+ freeparam (&shellparam, p);
+}
+void evaltree (void)
+{
+ void (*evalfn) (char **);
+ evalfn = dotcmd;
+}