[binutils-gdb] [gdb] Minor refactoring of is_dynamic_type_internal

Tom de Vries via Gdb-cvs <[email protected]>
Newsgroups gmane.comp.gdb.cvs
Message-ID <[email protected]>
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=940f3a4a8a4e0c7711c6d02fec8cbdee25cf0f35

commit 940f3a4a8a4e0c7711c6d02fec8cbdee25cf0f35
Author: Tom de Vries <[email protected]>
Date:   Tue Mar 10 21:44:01 2026 +0100

    [gdb] Minor refactoring of is_dynamic_type_internal
    
    Simplify is_dynamic_type_internal by:
    - factoring out type->field (i) for the TYPE_CODE_STRUCT/UNION case.
    - merging a loop iteration variable declaration into a for statement
    
    Approved-By: Tom Tromey <[email protected]>

Diff:
---
 gdb/gdbtypes.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
index d2e243abbe1..f3422fe5609 100644
--- a/gdb/gdbtypes.c
+++ b/gdb/gdbtypes.c
@@ -1982,21 +1982,21 @@ is_dynamic_type_internal (struct type *type, bool top_level)
     case TYPE_CODE_STRUCT:
     case TYPE_CODE_UNION:
       {
-	int i;
-
 	bool is_cplus = HAVE_CPLUS_STRUCT (type);
 
-	for (i = 0; i < type->num_fields (); ++i)
+	for (int i = 0; i < type->num_fields (); ++i)
 	  {
+	    struct field &f = type->field (i);
+
 	    /* Static fields can be ignored here.  */
-	    if (type->field (i).is_static ())
+	    if (f.is_static ())
 	      continue;
 	    /* If the field has dynamic type, then so does TYPE.  */
-	    if (is_dynamic_type_internal (type->field (i).type (), false))
+	    if (is_dynamic_type_internal (f.type (), false))
 	      return true;
 	    /* If the field is at a fixed offset, then it is not
 	       dynamic.  */
-	    if (!type->field (i).loc_is_dwarf_block ())
+	    if (!f.loc_is_dwarf_block ())
 	      continue;
 	    /* Do not consider C++ virtual base types to be dynamic
 	       due to the field's offset being dynamic; these are
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.