summaryrefslogtreecommitdiffstats
path: root/test/CFrontend
diff options
context:
space:
mode:
Diffstat (limited to 'test/CFrontend')
-rw-r--r--test/CFrontend/2002-02-17-ArgumentAddress.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/test/CFrontend/2002-02-17-ArgumentAddress.c b/test/CFrontend/2002-02-17-ArgumentAddress.c
new file mode 100644
index 0000000..78378de
--- /dev/null
+++ b/test/CFrontend/2002-02-17-ArgumentAddress.c
@@ -0,0 +1,37 @@
+int test(int X) {
+ return X;
+}
+
+void abc(int *X);
+int def(int Y, int Z) {
+ abc(&Z);
+ return Y;
+}
+
+struct Test { short X, x; int Y, Z; };
+
+int Testing(struct Test *A) {
+ return A->X+A->Y;
+}
+
+int Test2(int X, struct Test A, int Y) {
+ return X+Y+A.X+A.Y;
+}
+int Test3(struct Test A, struct Test B) {
+ return A.X+A.Y+B.Y+B.Z;
+}
+
+struct Test Test4(struct Test A) {
+ return A;
+}
+
+int Test6() {
+ int B[200];
+ return B[4];
+}
+
+struct STest2 { int X; short Y[4]; double Z; };
+
+struct STest2 Test7(struct STest2 X) {
+ return X;
+}