diff options
author | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2014-03-28 08:20:14 +0000 |
---|---|---|
committer | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2014-03-28 08:20:14 +0000 |
commit | c677f108ff340c5bca67b428aa6e56b47f62da8c (patch) | |
tree | f75acecc7abe80cf06cfe01a938bdc56620137c6 /test/regression/initializers.c | |
parent | f37a87e35850e57febba0a39ce3cb526e7886c10 (diff) | |
download | compcert-c677f108ff340c5bca67b428aa6e56b47f62da8c.tar.gz compcert-c677f108ff340c5bca67b428aa6e56b47f62da8c.zip |
C: Support array initializers that are too short + default init for remainder.
Elab: Handle C99 designated initializers.
C2C, Initializers: more precise intermediate AST for initializers.
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2439 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'test/regression/initializers.c')
-rw-r--r-- | test/regression/initializers.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/test/regression/initializers.c b/test/regression/initializers.c index d0a35f3d..938795a4 100644 --- a/test/regression/initializers.c +++ b/test/regression/initializers.c @@ -54,6 +54,9 @@ char x21[10] = "Hello!"; char * x22 = &(x10.u.y); +/* Initializer can refer to ident just declared */ +struct list { int hd; struct list * tl; } x23 = { sizeof(x23), &x23 }; + static void print_chars(char * s, int sz) { int i; @@ -115,6 +118,8 @@ int main() printf("x22 ok\n"); else printf("x22 error\n"); + printf("x23 = { hd = %d, tl = %s }\n", + x23.hd, x23.tl == &x23 ? "ok" : "ERROR"); return 0; } |