diff mbox series

Use DW_TAG_module for Ada

Message ID 20240503170804.1006062-1-tromey@adacore.com
State New
Headers show
Series Use DW_TAG_module for Ada | expand

Commit Message

Tom Tromey May 3, 2024, 5:08 p.m. UTC
DWARF is not especially clear on the distinction between
DW_TAG_namespace and DW_TAG_module, but I think that DW_TAG_module is
more appropriate for Ada.  This patch changes the compiler to do this.
Note that the Ada compiler does not yet create NAMESPACE_DECLs.

gcc

	* dwarf2out.cc (gen_namespace_die): Use DW_TAG_module for Ada.
---
 gcc/dwarf2out.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Tom Tromey May 17, 2024, 1:21 p.m. UTC | #1
>>>>> "Tom" == Tom Tromey <tromey@adacore.com> writes:

Tom> DWARF is not especially clear on the distinction between
Tom> DW_TAG_namespace and DW_TAG_module, but I think that DW_TAG_module is
Tom> more appropriate for Ada.  This patch changes the compiler to do this.
Tom> Note that the Ada compiler does not yet create NAMESPACE_DECLs.

Ping.

Tom
Jakub Jelinek May 17, 2024, 2:17 p.m. UTC | #2
On Fri, May 03, 2024 at 11:08:04AM -0600, Tom Tromey wrote:
> DWARF is not especially clear on the distinction between
> DW_TAG_namespace and DW_TAG_module, but I think that DW_TAG_module is
> more appropriate for Ada.  This patch changes the compiler to do this.
> Note that the Ada compiler does not yet create NAMESPACE_DECLs.
> 
> gcc
> 
> 	* dwarf2out.cc (gen_namespace_die): Use DW_TAG_module for Ada.

Ok, thanks.

> diff --git a/gcc/dwarf2out.cc b/gcc/dwarf2out.cc
> index 1b0e8b5a5b2..1e46c27cdf7 100644
> --- a/gcc/dwarf2out.cc
> +++ b/gcc/dwarf2out.cc
> @@ -26992,7 +26992,7 @@ gen_namespace_die (tree decl, dw_die_ref context_die)
>      {
>        /* Output a real namespace or module.  */
>        context_die = setup_namespace_context (decl, comp_unit_die ());
> -      namespace_die = new_die (is_fortran () || is_dlang ()
> +      namespace_die = new_die (is_fortran () || is_dlang () || is_ada ()
>  			       ? DW_TAG_module : DW_TAG_namespace,
>  			       context_die, decl);
>        /* For Fortran modules defined in different CU don't add src coords.  */
> -- 
> 2.44.0

	Jakub
diff mbox series

Patch

diff --git a/gcc/dwarf2out.cc b/gcc/dwarf2out.cc
index 1b0e8b5a5b2..1e46c27cdf7 100644
--- a/gcc/dwarf2out.cc
+++ b/gcc/dwarf2out.cc
@@ -26992,7 +26992,7 @@  gen_namespace_die (tree decl, dw_die_ref context_die)
     {
       /* Output a real namespace or module.  */
       context_die = setup_namespace_context (decl, comp_unit_die ());
-      namespace_die = new_die (is_fortran () || is_dlang ()
+      namespace_die = new_die (is_fortran () || is_dlang () || is_ada ()
 			       ? DW_TAG_module : DW_TAG_namespace,
 			       context_die, decl);
       /* For Fortran modules defined in different CU don't add src coords.  */