[DTrace-devel] [PATCH 8/8] test: add missing expectations and update diagnostics

Elena Zannoni elena.zannoni at oracle.com
Sat Oct 3 08:43:32 UTC 2026


Reviewed-by: Elena Zannoni <elena.zannoni at oracle.com>

On 9/28/26 12:02 PM, Kris Van Hees via DTrace-devel wrote:

> 
> Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
> ---
>  test/unittest/lexer/tst.keyword-member.d      |  2 ++
>  test/unittest/lexer/tst.keyword-member.r      |  1 +
>  test/unittest/lexer/tst.keyword-member.r.p    | 22 +++++++++++++++++++
>  .../unittest/types/err.D_CAST_INVAL.badcast.r |  2 ++
>  .../unittest/types/err.D_DECL_SCOPE.badenum.d | 19 ++++++++++++++++
>  .../types/err.D_DECL_SCOPE.badstruct.d        | 17 ++++++++++++++
>  test/unittest/types/err.D_SYNTAX.badenum.d    |  7 +++---
>  test/unittest/types/err.D_SYNTAX.badenum.r    |  2 +-
>  test/unittest/types/err.D_SYNTAX.badid.d      |  3 +--
>  test/unittest/types/err.D_SYNTAX.badstruct.d  |  7 +++---
>  test/unittest/types/err.D_SYNTAX.badstruct.r  |  2 +-
>  test/unittest/types/err.unloaded_var.r        |  2 +-
>  12 files changed, 73 insertions(+), 13 deletions(-)
>  create mode 100644 test/unittest/lexer/tst.keyword-member.r
>  create mode 100755 test/unittest/lexer/tst.keyword-member.r.p
>  create mode 100644 test/unittest/types/err.D_CAST_INVAL.badcast.r
>  create mode 100644 test/unittest/types/err.D_DECL_SCOPE.badenum.d
>  create mode 100644 test/unittest/types/err.D_DECL_SCOPE.badstruct.d
> 
> diff --git a/test/unittest/lexer/tst.keyword-member.d b/test/unittest/lexer/tst.keyword-member.d
> index 0c3650e3..18d78c70 100644
> --- a/test/unittest/lexer/tst.keyword-member.d
> +++ b/test/unittest/lexer/tst.keyword-member.d
> @@ -11,6 +11,8 @@
>   *      after -> and after ., even with comments interjected.
>   */
>  
> +#pragma D option quiet
> +
>  BEGIN
>  {
>  	printf("%p\n", &(*(struct cgroup_root *)&`cgrp_dfl_root).cgrp.self);
> diff --git a/test/unittest/lexer/tst.keyword-member.r b/test/unittest/lexer/tst.keyword-member.r
> new file mode 100644
> index 00000000..808ef419
> --- /dev/null
> +++ b/test/unittest/lexer/tst.keyword-member.r
> @@ -0,0 +1 @@
> +All pointers are identical (as expected).
> diff --git a/test/unittest/lexer/tst.keyword-member.r.p b/test/unittest/lexer/tst.keyword-member.r.p
> new file mode 100755
> index 00000000..4eb25f23
> --- /dev/null
> +++ b/test/unittest/lexer/tst.keyword-member.r.p
> @@ -0,0 +1,22 @@
> +#!/usr/bin/gawk -f
> +
> +NR == 1 {
> +	val = $1;
> +}
> +
> +NF > 0 {
> +	if ($1 != val) {
> +		print "Output line " NR ": Expected " val ", got " $1;
> +		fail++;
> +	}
> +}
> +
> +END {
> +	if (fail) {
> +		print fail " failures";
> +		exit(1);
> +	} else {
> +		print "All pointers are identical (as expected).";
> +		exit(0);
> +	}
> +}
> diff --git a/test/unittest/types/err.D_CAST_INVAL.badcast.r b/test/unittest/types/err.D_CAST_INVAL.badcast.r
> new file mode 100644
> index 00000000..0c62733f
> --- /dev/null
> +++ b/test/unittest/types/err.D_CAST_INVAL.badcast.r
> @@ -0,0 +1,2 @@
> +-- @@stderr --
> +dtrace: failed to compile script test/unittest/types/err.D_CAST_INVAL.badcast.d: [D_CAST_INVAL] line 14: invalid cast expression: "void" to "struct task_struct"
> diff --git a/test/unittest/types/err.D_DECL_SCOPE.badenum.d b/test/unittest/types/err.D_DECL_SCOPE.badenum.d
> new file mode 100644
> index 00000000..77e3d68d
> --- /dev/null
> +++ b/test/unittest/types/err.D_DECL_SCOPE.badenum.d
> @@ -0,0 +1,19 @@
> +/*
> + * Oracle Linux DTrace.
> + * Copyright (c) 2006, 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.
> + */
> +
> +/*
> + * ASSERTION:
> + *   Test a bogus enum declaration using an invalid identifer.
> + *
> + * SECTION: Type and Constant Definitions/Enumerations
> + */
> +
> +
> +enum foo`bar
> +{
> +
> +};
> diff --git a/test/unittest/types/err.D_DECL_SCOPE.badstruct.d b/test/unittest/types/err.D_DECL_SCOPE.badstruct.d
> new file mode 100644
> index 00000000..f8b1884d
> --- /dev/null
> +++ b/test/unittest/types/err.D_DECL_SCOPE.badstruct.d
> @@ -0,0 +1,17 @@
> +/*
> + * Oracle Linux DTrace.
> + * Copyright (c) 2006, 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.
> + */
> +
> +/*
> + * ASSERTION:
> + *   Attempt a bogus struct declaration using an invalid identifer.
> + *
> + * SECTION: Structs and Unions/Structs
> + */
> +
> +struct foo`bar {
> +
> +};
> diff --git a/test/unittest/types/err.D_SYNTAX.badenum.d b/test/unittest/types/err.D_SYNTAX.badenum.d
> index 77e3d68d..6717dd84 100644
> --- a/test/unittest/types/err.D_SYNTAX.badenum.d
> +++ b/test/unittest/types/err.D_SYNTAX.badenum.d
> @@ -1,19 +1,18 @@
>  /*
>   * Oracle Linux DTrace.
> - * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
> + * Copyright (c) 2006, 2026, 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.
>   */
>  
>  /*
> - * ASSERTION:
> - *   Test a bogus enum declaration using an invalid identifer.
> + * ASSERTION: Test a bogus enum declaration using an invalid identifer.
>   *
>   * SECTION: Type and Constant Definitions/Enumerations
>   */
>  
>  
> -enum foo`bar
> +enum foo.bar
>  {
>  
>  };
> diff --git a/test/unittest/types/err.D_SYNTAX.badenum.r b/test/unittest/types/err.D_SYNTAX.badenum.r
> index 834c2b1c..9a14d317 100644
> --- a/test/unittest/types/err.D_SYNTAX.badenum.r
> +++ b/test/unittest/types/err.D_SYNTAX.badenum.r
> @@ -1,2 +1,2 @@
>  -- @@stderr --
> -dtrace: failed to compile script test/unittest/types/err.D_SYNTAX.badenum.d: [D_SYNTAX] line 19: syntax error near "}"
> +dtrace: failed to compile script test/unittest/types/err.D_SYNTAX.badenum.d: [D_SYNTAX] line 15: syntax error near "."
> diff --git a/test/unittest/types/err.D_SYNTAX.badid.d b/test/unittest/types/err.D_SYNTAX.badid.d
> index 23d026f3..8f234539 100644
> --- a/test/unittest/types/err.D_SYNTAX.badid.d
> +++ b/test/unittest/types/err.D_SYNTAX.badid.d
> @@ -6,8 +6,7 @@
>   */
>  
>  /*
> - * ASSERTION:
> - *	Identifiers cannot begin with a digit
> + * ASSERTION: Identifiers cannot begin with a digit
>   *
>   * SECTION: Types, Operators, and Expressions/Identifier Names and Keywords
>   */
> diff --git a/test/unittest/types/err.D_SYNTAX.badstruct.d b/test/unittest/types/err.D_SYNTAX.badstruct.d
> index f8b1884d..a4c8149c 100644
> --- a/test/unittest/types/err.D_SYNTAX.badstruct.d
> +++ b/test/unittest/types/err.D_SYNTAX.badstruct.d
> @@ -1,17 +1,16 @@
>  /*
>   * Oracle Linux DTrace.
> - * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
> + * Copyright (c) 2006, 2026, 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.
>   */
>  
>  /*
> - * ASSERTION:
> - *   Attempt a bogus struct declaration using an invalid identifer.
> + * ASSERTION: Attempt a bogus struct declaration using an invalid identifer.
>   *
>   * SECTION: Structs and Unions/Structs
>   */
>  
> -struct foo`bar {
> +struct foo.bar {
>  
>  };
> diff --git a/test/unittest/types/err.D_SYNTAX.badstruct.r b/test/unittest/types/err.D_SYNTAX.badstruct.r
> index da798f0e..37ff0051 100644
> --- a/test/unittest/types/err.D_SYNTAX.badstruct.r
> +++ b/test/unittest/types/err.D_SYNTAX.badstruct.r
> @@ -1,2 +1,2 @@
>  -- @@stderr --
> -dtrace: failed to compile script test/unittest/types/err.D_SYNTAX.badstruct.d: [D_SYNTAX] line 17: syntax error near "}"
> +dtrace: failed to compile script test/unittest/types/err.D_SYNTAX.badstruct.d: [D_SYNTAX] line 14: syntax error near "."
> diff --git a/test/unittest/types/err.unloaded_var.r b/test/unittest/types/err.unloaded_var.r
> index ac7972c7..d8c59c5e 100644
> --- a/test/unittest/types/err.unloaded_var.r
> +++ b/test/unittest/types/err.unloaded_var.r
> @@ -1,2 +1,2 @@
>  -- @@stderr --
> -dtrace: failed to compile script test/unittest/types/err.unloaded_var.d: line 21: failed to resolve gfs2`gfs2_control_wq: Module is no longer loaded
> +dtrace: failed to compile script test/unittest/types/err.unloaded_var.d: line 21: failed to resolve gfs2`gfs2_control_wq: Unknown module name
> -- 
> 2.52.0
> 
> 
> _______________________________________________
> DTrace-devel mailing list
> DTrace-devel at oss.oracle.com
> https://oss.oracle.com/mailman/listinfo/dtrace-devel
> 




More information about the DTrace-devel mailing list