On 9/7/25 2:31 AM, Takayuki 'January June' Suwa wrote:
Hi!


+
+  // opt_pass methods:
+  opt_pass *clone () override { return new pass_dep_fusion (m_ctxt); }
+  bool gate (function *) override;
+  unsigned int execute (function *) override;

Wouldn't it be better to add 'final' along with 'override' to opt_pass vfuncs?
(See commit 725793af78064fa605ea6d9376aaf99ecb71467b, etc.)
Yea.  It's easily missed.  Fixed in the obvious way.

Bootstrapped and regression tested on x86_64.  Pushed to the trunk.

Thanks,
Jeff


commit 1b9c218d1429d596a33b13e450da0bdc1643e984
Author: Jeff Law <[email protected]>
Date:   Sun Sep 7 12:28:23 2025 -0600

    gcc: introduce the dep_fusion pass
    
    >> +
    >> +  // opt_pass methods:
    >> +  opt_pass *clone () override { return new pass_dep_fusion (m_ctxt); }
    >> +  bool gate (function *) override;
    >> +  unsigned int execute (function *) override;
    >
    > Wouldn't it be better to add 'final' along with 'override' to opt_pass
    > vfuncs?
    > (See commit 725793af78064fa605ea6d9376aaf99ecb71467b, etc.)Yea.  It's 
easily missed.  Fixed in the obvious way.
    
    Bootstrapped and regression tested on x86_64.  Pushed to the trunk.
    
    gcc/
            * dep-fusion.cc: Mark clone, gate and execute methods as final.

diff --git a/gcc/dep-fusion.cc b/gcc/dep-fusion.cc
index d040af6991e..bbd935118c5 100644
--- a/gcc/dep-fusion.cc
+++ b/gcc/dep-fusion.cc
@@ -61,9 +61,9 @@ public:
   {}
 
   // opt_pass methods:
-  opt_pass *clone () override { return new pass_dep_fusion (m_ctxt); }
-  bool gate (function *) override;
-  unsigned int execute (function *) override;
+  opt_pass *clone () final override { return new pass_dep_fusion (m_ctxt); }
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override;
 };
 
 bool

Reply via email to