diff --git a/core/fpdfapi/font/cfx_cttgsubtable.h b/core/fpdfapi/font/cfx_cttgsubtable.h
index 6b23a8d..54e16b4 100644
--- a/core/fpdfapi/font/cfx_cttgsubtable.h
+++ b/core/fpdfapi/font/cfx_cttgsubtable.h
@@ -60,7 +60,7 @@
   };
 
   struct TCoverageFormatBase {
-    virtual ~TCoverageFormatBase() {}
+    virtual ~TCoverageFormatBase() = default;
     uint16_t CoverageFormat;
   };
 
diff --git a/core/fpdfapi/parser/cpdf_document.h b/core/fpdfapi/parser/cpdf_document.h
index be3f30c..d611293 100644
--- a/core/fpdfapi/parser/cpdf_document.h
+++ b/core/fpdfapi/parser/cpdf_document.h
@@ -47,7 +47,7 @@
   // Type from which the XFA extension can subclass itself.
   class Extension {
    public:
-    virtual ~Extension() {}
+    virtual ~Extension() = default;
     virtual CPDF_Document* GetPDFDoc() const = 0;
     virtual int GetPageCount() const = 0;
     virtual void DeletePage(int page_index) = 0;
diff --git a/core/fpdfdoc/ipdf_formnotify.h b/core/fpdfdoc/ipdf_formnotify.h
index 053ca12..7e11ecb 100644
--- a/core/fpdfdoc/ipdf_formnotify.h
+++ b/core/fpdfdoc/ipdf_formnotify.h
@@ -14,7 +14,7 @@
 
 class IPDF_FormNotify {
  public:
-  virtual ~IPDF_FormNotify() {}
+  virtual ~IPDF_FormNotify() = default;
 
   virtual bool BeforeValueChange(CPDF_FormField* pField,
                                  const WideString& csValue) = 0;
diff --git a/core/fpdfdoc/ipvt_fontmap.h b/core/fpdfdoc/ipvt_fontmap.h
index 31aa73b..a27c0ac 100644
--- a/core/fpdfdoc/ipvt_fontmap.h
+++ b/core/fpdfdoc/ipvt_fontmap.h
@@ -15,7 +15,7 @@
 
 class IPVT_FontMap {
  public:
-  virtual ~IPVT_FontMap() {}
+  virtual ~IPVT_FontMap() = default;
 
   virtual CPDF_Font* GetPDFFont(int32_t nFontIndex) = 0;
   virtual ByteString GetPDFFontAlias(int32_t nFontIndex) = 0;
diff --git a/core/fxcodec/codec/codec_module_iface.h b/core/fxcodec/codec/codec_module_iface.h
index 0846972..e7faa89 100644
--- a/core/fxcodec/codec/codec_module_iface.h
+++ b/core/fxcodec/codec/codec_module_iface.h
@@ -16,10 +16,10 @@
  public:
   class Context {
    public:
-    virtual ~Context() {}
+    virtual ~Context() = default;
   };
 
-  virtual ~CodecModuleIface() {}
+  virtual ~CodecModuleIface() = default;
 
   // Returns the number of unprocessed bytes remaining in the input buffer.
   virtual FX_FILESIZE GetAvailInput(Context* pContext) const = 0;
diff --git a/core/fxcrt/fileaccess_iface.h b/core/fxcrt/fileaccess_iface.h
index 210080e..fdabc74 100644
--- a/core/fxcrt/fileaccess_iface.h
+++ b/core/fxcrt/fileaccess_iface.h
@@ -16,7 +16,7 @@
 class FileAccessIface {
  public:
   static std::unique_ptr<FileAccessIface> Create();
-  virtual ~FileAccessIface() {}
+  virtual ~FileAccessIface() = default;
 
   virtual bool Open(const ByteStringView& fileName, uint32_t dwMode) = 0;
   virtual bool Open(const WideStringView& fileName, uint32_t dwMode) = 0;
diff --git a/core/fxcrt/locale_iface.h b/core/fxcrt/locale_iface.h
index 7e0ca6f..7ee18d9 100644
--- a/core/fxcrt/locale_iface.h
+++ b/core/fxcrt/locale_iface.h
@@ -46,7 +46,7 @@
 
 class LocaleIface {
  public:
-  virtual ~LocaleIface() {}
+  virtual ~LocaleIface() = default;
 
   virtual WideString GetName() const = 0;
   virtual WideString GetDecimalSymbol() const = 0;
diff --git a/core/fxcrt/pauseindicator_iface.h b/core/fxcrt/pauseindicator_iface.h
index c12b02e..d5d856d 100644
--- a/core/fxcrt/pauseindicator_iface.h
+++ b/core/fxcrt/pauseindicator_iface.h
@@ -9,7 +9,7 @@
 
 class PauseIndicatorIface {
  public:
-  virtual ~PauseIndicatorIface() {}
+  virtual ~PauseIndicatorIface() = default;
   virtual bool NeedToPauseNow() = 0;
 };
 
diff --git a/core/fxge/dib/scanlinecomposer_iface.h b/core/fxge/dib/scanlinecomposer_iface.h
index 2a8fbbc..316736f 100644
--- a/core/fxge/dib/scanlinecomposer_iface.h
+++ b/core/fxge/dib/scanlinecomposer_iface.h
@@ -11,7 +11,7 @@
 
 class ScanlineComposerIface {
  public:
-  virtual ~ScanlineComposerIface() {}
+  virtual ~ScanlineComposerIface() = default;
 
   virtual void ComposeScanline(int line,
                                const uint8_t* scanline,
diff --git a/fpdfsdk/ipdfsdk_annothandler.h b/fpdfsdk/ipdfsdk_annothandler.h
index 1476089..11c43ec 100644
--- a/fpdfsdk/ipdfsdk_annothandler.h
+++ b/fpdfsdk/ipdfsdk_annothandler.h
@@ -21,7 +21,7 @@
 
 class IPDFSDK_AnnotHandler {
  public:
-  virtual ~IPDFSDK_AnnotHandler() {}
+  virtual ~IPDFSDK_AnnotHandler() = default;
 
   virtual bool CanAnswer(CPDFSDK_Annot* pAnnot) = 0;
   virtual CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot,
diff --git a/fpdfsdk/pwl/cpwl_edit.h b/fpdfsdk/pwl/cpwl_edit.h
index 849436a..d890834 100644
--- a/fpdfsdk/pwl/cpwl_edit.h
+++ b/fpdfsdk/pwl/cpwl_edit.h
@@ -15,7 +15,7 @@
 
 class IPWL_Filler_Notify {
  public:
-  virtual ~IPWL_Filler_Notify() {}
+  virtual ~IPWL_Filler_Notify() = default;
 
   // Must write to |bBottom| and |fPopupRet|.
   virtual void QueryWherePopup(CPWL_Wnd::PrivateData* pAttached,
diff --git a/fpdfsdk/pwl/cpwl_edit_impl.h b/fpdfsdk/pwl/cpwl_edit_impl.h
index 7f14ade..0472863 100644
--- a/fpdfsdk/pwl/cpwl_edit_impl.h
+++ b/fpdfsdk/pwl/cpwl_edit_impl.h
@@ -96,7 +96,7 @@
 
 class IFX_Edit_UndoItem {
  public:
-  virtual ~IFX_Edit_UndoItem() {}
+  virtual ~IFX_Edit_UndoItem() = default;
 
   virtual void Undo() = 0;
   virtual void Redo() = 0;
diff --git a/fpdfsdk/pwl/cpwl_wnd.h b/fpdfsdk/pwl/cpwl_wnd.h
index 1ed239e..cc6662b 100644
--- a/fpdfsdk/pwl/cpwl_wnd.h
+++ b/fpdfsdk/pwl/cpwl_wnd.h
@@ -106,7 +106,7 @@
 
   class ProviderIface : public Observable<ProviderIface> {
    public:
-    virtual ~ProviderIface() {}
+    virtual ~ProviderIface() = default;
 
     // get a matrix which map user space to CWnd client space
     virtual CFX_Matrix GetWindowMatrix(PrivateData* pAttached) = 0;
@@ -114,7 +114,7 @@
 
   class FocusHandlerIface {
    public:
-    virtual ~FocusHandlerIface() {}
+    virtual ~FocusHandlerIface() = default;
     virtual void OnSetFocus(CPWL_Edit* pEdit) = 0;
   };
 
diff --git a/fxjs/ijs_event_context.h b/fxjs/ijs_event_context.h
index a81f9fb..e83c423 100644
--- a/fxjs/ijs_event_context.h
+++ b/fxjs/ijs_event_context.h
@@ -22,7 +22,7 @@
 // may trigger new events on top of one another.
 class IJS_EventContext {
  public:
-  virtual ~IJS_EventContext() {}
+  virtual ~IJS_EventContext() = default;
 
   virtual Optional<IJS_Runtime::JS_Error> RunScript(
       const WideString& script) = 0;
diff --git a/testing/embedder_test.h b/testing/embedder_test.h
index a6a4cf5..fc96241 100644
--- a/testing/embedder_test.h
+++ b/testing/embedder_test.h
@@ -39,7 +39,7 @@
 
   class Delegate {
    public:
-    virtual ~Delegate() {}
+    virtual ~Delegate() = default;
 
     // Equivalent to UNSUPPORT_INFO::FSDK_UnSupport_Handler().
     virtual void UnsupportedHandler(int type) {}
diff --git a/xfa/fwl/ifwl_adaptertimermgr.h b/xfa/fwl/ifwl_adaptertimermgr.h
index 23627d9..9f9e5ca 100644
--- a/xfa/fwl/ifwl_adaptertimermgr.h
+++ b/xfa/fwl/ifwl_adaptertimermgr.h
@@ -11,7 +11,7 @@
 
 class IFWL_AdapterTimerMgr {
  public:
-  virtual ~IFWL_AdapterTimerMgr() {}
+  virtual ~IFWL_AdapterTimerMgr() = default;
   virtual void Start(CFWL_Timer* pTimer,
                      uint32_t dwElapse,
                      bool bImmediately,
diff --git a/xfa/fwl/ifwl_themeprovider.h b/xfa/fwl/ifwl_themeprovider.h
index 78c3e19..1996768 100644
--- a/xfa/fwl/ifwl_themeprovider.h
+++ b/xfa/fwl/ifwl_themeprovider.h
@@ -19,7 +19,7 @@
 
 class IFWL_ThemeProvider {
  public:
-  virtual ~IFWL_ThemeProvider() {}
+  virtual ~IFWL_ThemeProvider() = default;
 
   virtual void DrawBackground(CFWL_ThemeBackground* pParams) = 0;
   virtual void DrawText(CFWL_ThemeText* pParams) = 0;
diff --git a/xfa/fwl/ifwl_widgetdelegate.h b/xfa/fwl/ifwl_widgetdelegate.h
index 09bac9a..17b8933 100644
--- a/xfa/fwl/ifwl_widgetdelegate.h
+++ b/xfa/fwl/ifwl_widgetdelegate.h
@@ -16,7 +16,7 @@
 
 class IFWL_WidgetDelegate {
  public:
-  virtual ~IFWL_WidgetDelegate() {}
+  virtual ~IFWL_WidgetDelegate() = default;
 
   virtual void OnProcessMessage(CFWL_Message* pMessage) = 0;
   virtual void OnProcessEvent(CFWL_Event* pEvent) = 0;
diff --git a/xfa/fxfa/fm2js/cxfa_fmexpression.h b/xfa/fxfa/fm2js/cxfa_fmexpression.h
index c20d76b..37999a1 100644
--- a/xfa/fxfa/fm2js/cxfa_fmexpression.h
+++ b/xfa/fxfa/fm2js/cxfa_fmexpression.h
@@ -16,7 +16,7 @@
 
 class CXFA_FMExpression {
  public:
-  virtual ~CXFA_FMExpression() {}
+  virtual ~CXFA_FMExpression() = default;
   virtual bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) = 0;
 
  protected:
diff --git a/xfa/fxfa/fm2js/cxfa_fmsimpleexpression.h b/xfa/fxfa/fm2js/cxfa_fmsimpleexpression.h
index 275d7d4..ae8f38e 100644
--- a/xfa/fxfa/fm2js/cxfa_fmsimpleexpression.h
+++ b/xfa/fxfa/fm2js/cxfa_fmsimpleexpression.h
@@ -25,7 +25,7 @@
 
 class CXFA_FMSimpleExpression {
  public:
-  virtual ~CXFA_FMSimpleExpression() {}
+  virtual ~CXFA_FMSimpleExpression() = default;
   virtual bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) = 0;
 
   XFA_FM_TOKEN GetOperatorToken() const;
diff --git a/xfa/fxfa/fxfa.h b/xfa/fxfa/fxfa.h
index 5b51067..0796347 100644
--- a/xfa/fxfa/fxfa.h
+++ b/xfa/fxfa/fxfa.h
@@ -118,7 +118,7 @@
 // Probably should be called IXFA_AppDelegate.
 class IXFA_AppProvider {
  public:
-  virtual ~IXFA_AppProvider() {}
+  virtual ~IXFA_AppProvider() = default;
 
   /**
    * Returns the language of the running host application. Such as zh_CN
@@ -221,7 +221,7 @@
 
 class IXFA_DocEnvironment {
  public:
-  virtual ~IXFA_DocEnvironment() {}
+  virtual ~IXFA_DocEnvironment() = default;
 
   virtual void SetChangeMark(CXFA_FFDoc* hDoc) = 0;
   virtual void InvalidateRect(CXFA_FFPageView* pPageView,
@@ -277,7 +277,7 @@
 
 class IXFA_WidgetIterator {
  public:
-  virtual ~IXFA_WidgetIterator() {}
+  virtual ~IXFA_WidgetIterator() = default;
 
   virtual void Reset() = 0;
   virtual CXFA_FFWidget* MoveToFirst() = 0;
