[rtems commit] psxhdrs: POSIX API Signature Compliance Test for setjmp.h ( GCI2018)

Joel Sherrill joel at rtems.org
Wed Dec 12 03:38:42 UTC 2018


Module:    rtems
Branch:    master
Commit:    af677c0f7eac739dc20825446b36b8090e7eadc8
Changeset: http://git.rtems.org/rtems/commit/?id=af677c0f7eac739dc20825446b36b8090e7eadc8

Author:    ABR290B <abhimanyuraghuvanshi29 at gmail.com>
Date:      Wed Dec 12 03:56:59 2018 +0530

psxhdrs: POSIX API Signature Compliance Test for setjmp.h (GCI2018)

---

 testsuites/psxtests/Makefile.am                 |  6 ++++-
 testsuites/psxtests/psxhdrs/setjmp/longjmp.c    | 36 +++++++++++++++++++++++++
 testsuites/psxtests/psxhdrs/setjmp/setjmp.c     | 34 +++++++++++++++++++++++
 testsuites/psxtests/psxhdrs/setjmp/siglongjmp.c | 36 +++++++++++++++++++++++++
 testsuites/psxtests/psxhdrs/setjmp/sigsetjmp.c  | 35 ++++++++++++++++++++++++
 5 files changed, 146 insertions(+), 1 deletion(-)

diff --git a/testsuites/psxtests/Makefile.am b/testsuites/psxtests/Makefile.am
index 5af3824..3dd8fe0 100644
--- a/testsuites/psxtests/Makefile.am
+++ b/testsuites/psxtests/Makefile.am
@@ -1811,7 +1811,11 @@ lib_a_SOURCES = psxhdrs/devctl/posix_devctl.c \
 	psxhdrs/stdlib/wcstombs.c \
 	psxhdrs/stdlib/wctomb.c \
 	psxhdrs/sys/times/times.c \
-	psxhdrs/sys/resource/getrusage.c
+	psxhdrs/sys/resource/getrusage.c \
+	psxhdrs/setjmp/longjmp.c \
+	psxhdrs/setjmp/setjmp.c \
+	psxhdrs/setjmp/siglongjmp.c \
+	psxhdrs/setjmp/sigsetjmp.c
 
 ## Not supported by RTEMS, but POSIX API Compliance tests exist.
 ## lib_a_SOURCES += psxhdrs/ulimit/ulimit.c
diff --git a/testsuites/psxtests/psxhdrs/setjmp/longjmp.c b/testsuites/psxtests/psxhdrs/setjmp/longjmp.c
new file mode 100644
index 0000000..11ad09e
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/setjmp/longjmp.c
@@ -0,0 +1,36 @@
+/**
+ *  @file
+ *  @brief longjmp() API Conformance Test
+ */
+
+/*
+ *  COPYRIGHT (c) 2018.
+ *  Abhimanyu Raghuvanshi
+ *
+ *  Permission to use, copy, modify, and/or distribute this software
+ *  for any purpose with or without fee is hereby granted.
+ *
+ *  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ *  WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ *  WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ *  BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ *  OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ *  WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ *  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <setjmp.h>
+
+int test(void);
+
+int test(void)
+{
+  jmp_buf a;
+  int b = 1;
+  longjmp(a, b);
+  return 0;
+}
\ No newline at end of file
diff --git a/testsuites/psxtests/psxhdrs/setjmp/setjmp.c b/testsuites/psxtests/psxhdrs/setjmp/setjmp.c
new file mode 100644
index 0000000..fc53977
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/setjmp/setjmp.c
@@ -0,0 +1,34 @@
+/**
+ *  @file
+ *  @brief setjmp() API Conformance Test
+ */
+
+/*
+ *  COPYRIGHT (c) 2018.
+ *  Abhimanyu Raghuvanshi
+ *
+ *  Permission to use, copy, modify, and/or distribute this software
+ *  for any purpose with or without fee is hereby granted.
+ *
+ *  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ *  WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ *  WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ *  BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ *  OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ *  WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ *  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <setjmp.h>
+
+int test(void);
+
+int test(void)
+{
+  jmp_buf a;
+  return setjmp(a);
+}
\ No newline at end of file
diff --git a/testsuites/psxtests/psxhdrs/setjmp/siglongjmp.c b/testsuites/psxtests/psxhdrs/setjmp/siglongjmp.c
new file mode 100644
index 0000000..761ec0f
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/setjmp/siglongjmp.c
@@ -0,0 +1,36 @@
+/**
+ *  @file
+ *  @brief siglongjmp() API Conformance Test
+ */
+
+/*
+ *  COPYRIGHT (c) 2018.
+ *  Abhimanyu Raghuvanshi
+ *
+ *  Permission to use, copy, modify, and/or distribute this software
+ *  for any purpose with or without fee is hereby granted.
+ *
+ *  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ *  WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ *  WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ *  BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ *  OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ *  WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ *  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <setjmp.h>
+
+int test(void);
+
+int test(void)
+{
+  sigjmp_buf a;
+  int b = 1;
+  siglongjmp(a, b);
+  return 0;
+}
\ No newline at end of file
diff --git a/testsuites/psxtests/psxhdrs/setjmp/sigsetjmp.c b/testsuites/psxtests/psxhdrs/setjmp/sigsetjmp.c
new file mode 100644
index 0000000..fb0500f
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/setjmp/sigsetjmp.c
@@ -0,0 +1,35 @@
+/**
+ *  @file
+ *  @brief sigsetjmp() API Conformance Test
+ */
+
+/*
+ *  COPYRIGHT (c) 2018.
+ *  Abhimanyu Raghuvanshi
+ *
+ *  Permission to use, copy, modify, and/or distribute this software
+ *  for any purpose with or without fee is hereby granted.
+ *
+ *  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ *  WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ *  WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
+ *  BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
+ *  OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ *  WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ *  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <setjmp.h>
+
+int test(void);
+
+int test(void)
+{
+  sigjmp_buf a;
+  int b = 1;
+  return sigsetjmp(a, b);
+}
\ No newline at end of file



More information about the vc mailing list