[llvm-commits] CVS: llvm/test/CFrontend/2007-02-05-nested.c

Chris Lattner sabre at nondot.org
Wed Feb 7 15:28:24 PST 2007



Changes in directory llvm/test/CFrontend:

2007-02-05-nested.c added (r1.1)
---
Log message:

new testcase for nested functions


---
Diffs of the changes:  (+54 -0)

 2007-02-05-nested.c |   54 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 54 insertions(+)


Index: llvm/test/CFrontend/2007-02-05-nested.c
diff -c /dev/null llvm/test/CFrontend/2007-02-05-nested.c:1.1
*** /dev/null	Wed Feb  7 17:28:18 2007
--- llvm/test/CFrontend/2007-02-05-nested.c	Wed Feb  7 17:28:08 2007
***************
*** 0 ****
--- 1,54 ----
+ // RUN: %llvmgcc -S -fnested-functions -O0 -o - -emit-llvm %s 
+ // PR915
+ 
+ extern void abort(void);
+ 
+ void nest(int n)
+ {
+   int a = 0;
+   int b = 5;
+   int c = 0;
+   int d = 7;
+ 
+   void o(int i, int j)
+   {
+     if (i!=j)
+       abort();
+   }
+ 
+   void f(x)
+     int x; /* K&R style */
+   {
+     int e = 0;
+     int f = 2;
+     int g = 0;
+ 
+     void y(void)
+     {
+       c = n;
+       e = 1;
+       g = x;
+     }
+ 
+     void z(void)
+     {
+       a = 4;
+       g = 3;
+     }
+ 
+     a = 5;
+     y();
+     c = x;
+     z();
+     o(1,e);
+     o(2,f);
+     o(3,g);
+   }
+ 
+   c = 2;
+   f(6);
+   o(4,a);
+   o(5,b);
+   o(6,c);
+   o(7,d);
+ }






More information about the llvm-commits mailing list