https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89076

            Bug ID: 89076
           Summary: gcc/dwarf2out.c:23270:9: warning: duplicated ‘if’
                    condition
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dcb314 at hotmail dot com
  Target Milestone: ---

Source code is

          else if (parm)
            {
              dw_die_ref parm_die = gen_decl_die (parm, NULL, NULL, subr_die);

              if (early_dwarf
                  && parm == DECL_ARGUMENTS (decl)
                  && TREE_CODE (TREE_TYPE (decl)) == METHOD_TYPE
                  && parm_die
                  && (dwarf_version >= 3 || !dwarf_strict))
                add_AT_die_ref (subr_die, DW_AT_object_pointer, parm_die);

              parm = DECL_CHAIN (parm);
            }
          else if (parm)
            parm = DECL_CHAIN (parm);

Suggest code rework. svn blame says

261304     marxin         else if (parm)
152043      dodji           {
231762  pmderodat             dw_die_ref parm_die = gen_decl_die (parm, NULL,
NULL, subr_die);
162691      jakub
251448    rguenth             if (early_dwarf
251448    rguenth                 && parm == DECL_ARGUMENTS (decl)
162691      jakub                 && TREE_CODE (TREE_TYPE (decl)) ==
METHOD_TYPE
162691      jakub                 && parm_die
162691      jakub                 && (dwarf_version >= 3 || !dwarf_strict))
162691      jakub               add_AT_die_ref (subr_die, DW_AT_object_pointer,
parm_die);
162691      jakub
162223    froydnj             parm = DECL_CHAIN (parm);
152043      dodji           }
217125  ienkovich         else if (parm)
217125  ienkovich           parm = DECL_CHAIN (parm);

Reply via email to