summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorChristian Poveda <christian.poveda@ferrous-systems.com>2022-09-01 15:59:37 -0500
committerEmilio Cobos Álvarez <emilio@crisal.io>2022-09-22 20:25:33 -1000
commit2ffc8d8946a44f2a695a0c148ad24e7e0e9637d2 (patch)
tree91f9406fd1234273ee8eaed37ae1a0b2d8322736 /tests
parente503476a96636df41532b988f8f8f0c318fff24a (diff)
handle c++ `[[noreturn]]` attribute
Diffstat (limited to 'tests')
-rw-r--r--tests/expectations/tests/noreturn.rs10
-rw-r--r--tests/headers/noreturn.hpp (renamed from tests/headers/noreturn.h)1
2 files changed, 9 insertions, 2 deletions
diff --git a/tests/expectations/tests/noreturn.rs b/tests/expectations/tests/noreturn.rs
index fa81ee76..1ffce9c0 100644
--- a/tests/expectations/tests/noreturn.rs
+++ b/tests/expectations/tests/noreturn.rs
@@ -6,8 +6,14 @@
)]
extern "C" {
- pub fn f() -> !;
+ #[link_name = "\u{1}_Z1fv"]
+ pub fn f() -> !;
}
extern "C" {
- pub fn g();
+ #[link_name = "\u{1}_Z1gv"]
+ pub fn g();
+}
+extern "C" {
+ #[link_name = "\u{1}_Z1hv"]
+ pub fn h() -> !;
}
diff --git a/tests/headers/noreturn.h b/tests/headers/noreturn.hpp
index 0e4819e2..deaa3b1a 100644
--- a/tests/headers/noreturn.h
+++ b/tests/headers/noreturn.hpp
@@ -2,3 +2,4 @@
_Noreturn void f(void);
// TODO (pvdrz): figure out how to handle this case.
__attribute__((noreturn)) void g(void);
+[[noreturn]] void h(void);