From: Eugene Loh <[email protected]>
Clearly,
test/unittest/enum/err.*RepeatIdentifiers.d
test/unittest/types/err.*dupenum.d
are impacted, but so are
test/unittest/offsetof/err.D_UNKNOWN.OffsetofNULL.d
test/unittest/types/err.D_UNKNOWN.dupstruct.d
test/unittest/union/err.D_DECL_INCOMPLETE.circular.d
test/unittest/union/err.D_DECL_INCOMPLETE.order.d
test/unittest/union/err.D_DECL_INCOMPLETE.simple.d
due to symlinks to libctf.r.p. And dupstruct needed a fix.
Signed-off-by: Eugene Loh <[email protected]>
---
.../enum/err.D_DECL_IDRED.RepeatIdentifiers.r | 2 --
...tIdentifiers.d => err.RepeatIdentifiers.d} | 7 +++----
test/unittest/enum/err.RepeatIdentifiers.r | 2 ++
...ntifiers.r.p => err.RepeatIdentifiers.r.p} | 0
.../unittest/types/err.D_DECL_IDRED.dupenum.r | 2 --
...r.D_DECL_IDRED.dupenum.d => err.dupenum.d} | 4 +++-
test/unittest/types/err.dupenum.r | 2 ++
...DECL_IDRED.dupenum.r.p => err.dupenum.r.p} | 0
test/utils/libctf.r.p | 19 +++++++++++++++++++
9 files changed, 29 insertions(+), 9 deletions(-)
delete mode 100644 test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.r
rename test/unittest/enum/{err.D_DECL_IDRED.RepeatIdentifiers.d => err.RepeatIdentifiers.d} (78%)
create mode 100644 test/unittest/enum/err.RepeatIdentifiers.r
rename test/unittest/enum/{err.D_DECL_IDRED.RepeatIdentifiers.r.p => err.RepeatIdentifiers.r.p} (100%)
delete mode 100644 test/unittest/types/err.D_DECL_IDRED.dupenum.r
rename test/unittest/types/{err.D_DECL_IDRED.dupenum.d => err.dupenum.d} (74%)
create mode 100644 test/unittest/types/err.dupenum.r
rename test/unittest/types/{err.D_DECL_IDRED.dupenum.r.p => err.dupenum.r.p} (100%)
diff --git a/test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.r b/test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.r
deleted file mode 100644
index 424d6b077..000000000
--- a/test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.r
+++ /dev/null
@@ -1,2 +0,0 @@
--- @@stderr --
-dtrace: failed to compile script test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.d: [D_DECL_IDRED] line 24: identifier redeclared: GREEN
diff --git a/test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.d b/test/unittest/enum/err.RepeatIdentifiers.d
similarity index 78%
rename from test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.d
rename to test/unittest/enum/err.RepeatIdentifiers.d
index 43837c78a..0dfd7b86c 100644
--- a/test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.d
+++ b/test/unittest/enum/err.RepeatIdentifiers.d
@@ -1,6 +1,6 @@
/*
* Oracle Linux DTrace.
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2025, Oracle and/or its affiliates. All rights reserved.
* Licensed under the Universal Permissive License v 1.0 as shown at
* http://oss.oracle.com/licenses/upl.
*/
@@ -11,11 +11,10 @@
* error.
*
* SECTION: Type and Constant Definitions/Enumerations
- *
- * NOTES:
- *
*/
+/* @@runtest-opts: -xerrtags */
+
#pragma D option quiet
enum colors {
diff --git a/test/unittest/enum/err.RepeatIdentifiers.r b/test/unittest/enum/err.RepeatIdentifiers.r
new file mode 100644
index 000000000..860ffb5c7
--- /dev/null
+++ b/test/unittest/enum/err.RepeatIdentifiers.r
@@ -0,0 +1,2 @@
+-- @@stderr --
+dtrace: failed to compile script test/unittest/enum/err.RepeatIdentifiers.d: expected error
diff --git a/test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.r.p b/test/unittest/enum/err.RepeatIdentifiers.r.p
similarity index 100%
rename from test/unittest/enum/err.D_DECL_IDRED.RepeatIdentifiers.r.p
rename to test/unittest/enum/err.RepeatIdentifiers.r.p
diff --git a/test/unittest/types/err.D_DECL_IDRED.dupenum.r b/test/unittest/types/err.D_DECL_IDRED.dupenum.r
deleted file mode 100644
index 0b6369e52..000000000
--- a/test/unittest/types/err.D_DECL_IDRED.dupenum.r
+++ /dev/null
@@ -1,2 +0,0 @@
--- @@stderr --
-dtrace: failed to compile script test/unittest/types/err.D_DECL_IDRED.dupenum.d: [D_DECL_IDRED] line 18: identifier redeclared: x
diff --git a/test/unittest/types/err.D_DECL_IDRED.dupenum.d b/test/unittest/types/err.dupenum.d
similarity index 74%
rename from test/unittest/types/err.D_DECL_IDRED.dupenum.d
rename to test/unittest/types/err.dupenum.d
index dfc74f250..22001e5d6 100644
--- a/test/unittest/types/err.D_DECL_IDRED.dupenum.d
+++ b/test/unittest/types/err.dupenum.d
@@ -1,6 +1,6 @@
/*
* Oracle Linux DTrace.
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2025, Oracle and/or its affiliates. All rights reserved.
* Licensed under the Universal Permissive License v 1.0 as shown at
* http://oss.oracle.com/licenses/upl.
*/
@@ -12,6 +12,8 @@
* SECTION: Type and Constant Definitions/Enumerations
*/
+/* @@runtest-opts: -xerrtags */
+
enum foo {
x = 3,
x = 4
diff --git a/test/unittest/types/err.dupenum.r b/test/unittest/types/err.dupenum.r
new file mode 100644
index 000000000..153985568
--- /dev/null
+++ b/test/unittest/types/err.dupenum.r
@@ -0,0 +1,2 @@
+-- @@stderr --
+dtrace: failed to compile script test/unittest/types/err.dupenum.d: expected error
diff --git a/test/unittest/types/err.D_DECL_IDRED.dupenum.r.p b/test/unittest/types/err.dupenum.r.p
similarity index 100%
rename from test/unittest/types/err.D_DECL_IDRED.dupenum.r.p
rename to test/unittest/types/err.dupenum.r.p
diff --git a/test/utils/libctf.r.p b/test/utils/libctf.r.p
index a2b4602cf..c81e1b709 100755
--- a/test/utils/libctf.r.p
+++ b/test/utils/libctf.r.p
@@ -1,7 +1,26 @@
#!/usr/bin/gawk -f
# Licensed under the Universal Permissive License v 1.0 as shown at
# http://oss.oracle.com/licenses/upl.
+
+# Possible "enumerator" label.
+/Duplicate member, enumerator, or variable name/ {
+ sub(/member, enumerator, or variable/, "member or variable");
+}
+
+# Possible trailing '.'.
/Duplicate member or variable name\.$/ { sub(/\.$/, ""); }
/Member name not found\.$/ { sub(/\.$/, ""); }
+
+# Could be union or struct.
/enum union pirate:/ { sub(/enum union pirate/, "enum struct pirate"); }
+
+# Older or newer libctf diags.
+/\[D_DECL_IDRED\] line [1-9][0-9]*: identifier redeclared: [a-zA-Z]*$/ {
+ sub(/\[D_DECL_IDRED\] line [1-9][0-9]*: .*$/, "expected error");
+}
+/\[D_UNKNOWN\] line [1-9][0-9]*: failed to define enumerator '[a-zA-Z]*': Duplicate member or variable name$/ {
+ sub(/\[D_UNKNOWN\] line [1-9][0-9]*: .*$/, "expected error");
+}
+
+# Print.
{ print; }
--
2.47.3
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.