From 11a4030bc7c9618d2939952a0a92e39922b14ab7 Mon Sep 17 00:00:00 2001 From: Virgile Prevosto <virgile.prevosto@m4x.org> Date: Wed, 10 Jul 2024 17:59:45 +0200 Subject: [PATCH] [tests] test case for bug in handling array initialization from string --- tests/syntax/init_array_string.i | 11 +++++++++++ tests/syntax/oracle/init_array_string.res.oracle | 9 +++++++++ 2 files changed, 20 insertions(+) create mode 100644 tests/syntax/init_array_string.i create mode 100644 tests/syntax/oracle/init_array_string.res.oracle diff --git a/tests/syntax/init_array_string.i b/tests/syntax/init_array_string.i new file mode 100644 index 00000000000..b301c8d102c --- /dev/null +++ b/tests/syntax/init_array_string.i @@ -0,0 +1,11 @@ +char* ptr = "A" "B"; + +char* ptr2 = ("A" "B"); + +char a[] = "A" "B"; + +char b[] = ("A" "B"); + +char c[] = "ABC"; + +char d[] = ("ABC"); diff --git a/tests/syntax/oracle/init_array_string.res.oracle b/tests/syntax/oracle/init_array_string.res.oracle new file mode 100644 index 00000000000..92a54fcd30d --- /dev/null +++ b/tests/syntax/oracle/init_array_string.res.oracle @@ -0,0 +1,9 @@ +[kernel] Parsing init_array_string.i (no preprocessing) +/* Generated by Frama-C */ +char *ptr = (char *)"AB"; +char *ptr2 = (char *)"AB"; +char a[3] = {(char)'A', (char)'B', (char)'\000'}; +char b[3] = {(char)'A', (char)'B', (char)'\000'}; +char c[4] = {(char)'A', (char)'B', (char)'C', (char)'\000'}; +char d[4] = {(char)'A', (char)'B', (char)'C', (char)'\000'}; + -- GitLab