summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/include/fpdfapi/fpdf_parser.h4
-rw-r--r--core/include/fxcrt/fx_system.h9
-rw-r--r--core/include/fxge/fx_font.h2
-rw-r--r--core/src/fpdfapi/fpdf_font/ttgsubtable.h2
-rw-r--r--core/src/fpdfdoc/tagged_int.h2
-rw-r--r--core/src/fxcrt/extension.h4
-rw-r--r--core/src/fxcrt/fx_arabic.h2
-rw-r--r--core/src/fxge/apple/apple_int.h2
8 files changed, 18 insertions, 9 deletions
diff --git a/core/include/fpdfapi/fpdf_parser.h b/core/include/fpdfapi/fpdf_parser.h
index c6c80778a1..feac6c67dc 100644
--- a/core/include/fpdfapi/fpdf_parser.h
+++ b/core/include/fpdfapi/fpdf_parser.h
@@ -397,7 +397,7 @@ public:
#define PDFPARSE_ERROR_PASSWORD 3
#define PDFPARSE_ERROR_HANDLER 4
#define PDFPARSE_ERROR_CERT 5
-class CPDF_Parser : public IPDF_DocParser
+class CPDF_Parser FX_FINAL : public IPDF_DocParser
{
public:
@@ -945,7 +945,7 @@ enum PDF_DATAAVAIL_STATUS {
PDF_DATAAVAIL_LOADALLFILE,
PDF_DATAAVAIL_TRAILER_APPEND
};
-class CPDF_DataAvail : public CFX_Object, public IPDF_DataAvail
+class CPDF_DataAvail FX_FINAL : public CFX_Object, public IPDF_DataAvail
{
public:
diff --git a/core/include/fxcrt/fx_system.h b/core/include/fxcrt/fx_system.h
index 9f43360fa7..a757de4c5e 100644
--- a/core/include/fxcrt/fx_system.h
+++ b/core/include/fxcrt/fx_system.h
@@ -275,5 +275,14 @@ int FXSYS_round(FX_FLOAT f);
#define FXSYS_sqrt2(a, b) (FX_FLOAT)FXSYS_sqrt((a)*(a) + (b)*(b))
#ifdef __cplusplus
};
+
+#if defined(__clang__) || defined(_MSC_VER)
+#define FX_FINAL final
+#elif defined(__GNUC__) && __cplusplus >= 201103 && \
+ (__GNUC__ * 10000 + __GNUC_MINOR__ * 100) >= 40700
+#define FX_FINAL final
+#else
+#define FX_FINAL
+#endif
#endif
#endif
diff --git a/core/include/fxge/fx_font.h b/core/include/fxge/fx_font.h
index dc96debeb6..52f8f30d8d 100644
--- a/core/include/fxge/fx_font.h
+++ b/core/include/fxge/fx_font.h
@@ -316,7 +316,7 @@ class CFX_FolderFontInfo : public IFX_SystemFontInfo
{
public:
CFX_FolderFontInfo();
- ~CFX_FolderFontInfo();
+ virtual ~CFX_FolderFontInfo();
void AddPath(FX_BSTR path);
virtual void Release();
virtual FX_BOOL EnumFontList(CFX_FontMapper* pMapper);
diff --git a/core/src/fpdfapi/fpdf_font/ttgsubtable.h b/core/src/fpdfapi/fpdf_font/ttgsubtable.h
index bf9c7a4c42..26f67fbd18 100644
--- a/core/src/fpdfapi/fpdf_font/ttgsubtable.h
+++ b/core/src/fpdfapi/fpdf_font/ttgsubtable.h
@@ -406,7 +406,7 @@ private:
struct TFeatureList FeatureList;
struct TLookupList LookupList;
};
-class CFX_GSUBTable : public IFX_GSUBTable, public CFX_Object
+class CFX_GSUBTable FX_FINAL : public IFX_GSUBTable, public CFX_Object
{
public:
virtual void Release()
diff --git a/core/src/fpdfdoc/tagged_int.h b/core/src/fpdfdoc/tagged_int.h
index 0ebf4084a4..d190db6427 100644
--- a/core/src/fpdfdoc/tagged_int.h
+++ b/core/src/fpdfdoc/tagged_int.h
@@ -32,7 +32,7 @@ protected:
CFX_ArrayTemplate<CPDF_StructElementImpl*> m_Kids;
friend class CPDF_StructElementImpl;
};
-class CPDF_StructElementImpl : public CPDF_StructElement
+class CPDF_StructElementImpl FX_FINAL : public CPDF_StructElement
{
public:
CPDF_StructElementImpl(CPDF_StructTreeImpl* pTree, CPDF_StructElementImpl* pParent, CPDF_Dictionary* pDict);
diff --git a/core/src/fxcrt/extension.h b/core/src/fxcrt/extension.h
index db35387908..a736425d57 100644
--- a/core/src/fxcrt/extension.h
+++ b/core/src/fxcrt/extension.h
@@ -25,7 +25,7 @@ public:
virtual FX_BOOL Truncate(FX_FILESIZE szFile) = 0;
};
IFXCRT_FileAccess* FXCRT_FileAccess_Create();
-class CFX_CRTFileStream : public IFX_FileStream, public CFX_Object
+class CFX_CRTFileStream FX_FINAL : public IFX_FileStream, public CFX_Object
{
public:
CFX_CRTFileStream(IFXCRT_FileAccess* pFA) : m_pFile(pFA), m_dwCount(1), m_bUseRange(FALSE), m_nOffset(0), m_nSize(0) {}
@@ -117,7 +117,7 @@ public:
#define FX_MEMSTREAM_BlockSize (64 * 1024)
#define FX_MEMSTREAM_Consecutive 0x01
#define FX_MEMSTREAM_TakeOver 0x02
-class CFX_MemoryStream : public IFX_MemoryStream, public CFX_Object
+class CFX_MemoryStream FX_FINAL : public IFX_MemoryStream, public CFX_Object
{
public:
CFX_MemoryStream(FX_BOOL bConsecutive)
diff --git a/core/src/fxcrt/fx_arabic.h b/core/src/fxcrt/fx_arabic.h
index 503ec01696..1dc275b8c3 100644
--- a/core/src/fxcrt/fx_arabic.h
+++ b/core/src/fxcrt/fx_arabic.h
@@ -6,7 +6,7 @@
#ifndef _FX_ARABIC_IMP
#define _FX_ARABIC_IMP
-class CFX_BidiChar : public IFX_BidiChar, public CFX_Object
+class CFX_BidiChar FX_FINAL : public IFX_BidiChar, public CFX_Object
{
public:
CFX_BidiChar();
diff --git a/core/src/fxge/apple/apple_int.h b/core/src/fxge/apple/apple_int.h
index 42d63628f2..a8fbe2fbaa 100644
--- a/core/src/fxge/apple/apple_int.h
+++ b/core/src/fxge/apple/apple_int.h
@@ -185,7 +185,7 @@ protected:
FX_INT32 _horzSize;
FX_INT32 _vertSize;
};
-class CFX_FontProvider : public IFX_FileRead
+class CFX_FontProvider FX_FINAL : public IFX_FileRead
{
public:
virtual void Release()