aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2022-04-16 01:44:07 +0200
committerJay Berkenbilt <ejb@ql.org>2022-04-16 17:39:14 +0200
commitcdd0b4fb7d48b32686d56364cf170569bdb0149d (patch)
treeb094c966b33575eb9f2e441d1705990f45539bec
parent2a7d2b63c2a7284d1b1179eefbf64f5dd29aa510 (diff)
downloadqpdf-cdd0b4fb7d48b32686d56364cf170569bdb0149d.tar.zst
Use = default and = delete where possible in classes
-rw-r--r--README-maintainer12
-rw-r--r--TODO4
-rw-r--r--examples/pdf-count-strings.cc4
-rw-r--r--examples/pdf-create.cc6
-rw-r--r--examples/pdf-filter-tokens.cc8
-rw-r--r--examples/pdf-invert-images.cc4
-rw-r--r--examples/pdf-parse-content.cc5
-rw-r--r--fuzz/qpdf_fuzzer.cc4
-rw-r--r--include/qpdf/Buffer.hh2
-rw-r--r--include/qpdf/BufferInputSource.hh4
-rw-r--r--include/qpdf/ClosedFileInputSource.hh2
-rw-r--r--include/qpdf/FileInputSource.hh2
-rw-r--r--include/qpdf/InputSource.hh19
-rw-r--r--include/qpdf/JSON.hh18
-rw-r--r--include/qpdf/Pipeline.hh2
-rw-r--r--include/qpdf/Pl_Buffer.hh4
-rw-r--r--include/qpdf/Pl_Concatenate.hh6
-rw-r--r--include/qpdf/Pl_Count.hh4
-rw-r--r--include/qpdf/Pl_DCT.hh12
-rw-r--r--include/qpdf/Pl_Discard.hh6
-rw-r--r--include/qpdf/Pl_Flate.hh2
-rw-r--r--include/qpdf/Pl_QPDFTokenizer.hh4
-rw-r--r--include/qpdf/Pl_RunLength.hh4
-rw-r--r--include/qpdf/Pl_StdioFile.hh4
-rw-r--r--include/qpdf/QPDF.hh16
-rw-r--r--include/qpdf/QPDFAcroFormDocumentHelper.hh8
-rw-r--r--include/qpdf/QPDFAnnotationObjectHelper.hh10
-rw-r--r--include/qpdf/QPDFDocumentHelper.hh4
-rw-r--r--include/qpdf/QPDFEFStreamObjectHelper.hh2
-rw-r--r--include/qpdf/QPDFEmbeddedFileDocumentHelper.hh2
-rw-r--r--include/qpdf/QPDFExc.hh4
-rw-r--r--include/qpdf/QPDFFileSpecObjectHelper.hh2
-rw-r--r--include/qpdf/QPDFFormFieldObjectHelper.hh10
-rw-r--r--include/qpdf/QPDFNameTreeObjectHelper.hh4
-rw-r--r--include/qpdf/QPDFNumberTreeObjectHelper.hh7
-rw-r--r--include/qpdf/QPDFObject.hh4
-rw-r--r--include/qpdf/QPDFObjectHandle.hh20
-rw-r--r--include/qpdf/QPDFObjectHelper.hh4
-rw-r--r--include/qpdf/QPDFOutlineDocumentHelper.hh8
-rw-r--r--include/qpdf/QPDFOutlineObjectHelper.hh4
-rw-r--r--include/qpdf/QPDFPageDocumentHelper.hh10
-rw-r--r--include/qpdf/QPDFPageLabelDocumentHelper.hh10
-rw-r--r--include/qpdf/QPDFPageObjectHelper.hh10
-rw-r--r--include/qpdf/QPDFSystemError.hh2
-rw-r--r--include/qpdf/QPDFTokenizer.hh4
-rw-r--r--include/qpdf/QPDFWriter.hh8
-rw-r--r--include/qpdf/RandomDataProvider.hh4
-rw-r--r--libqpdf/AES_PDF_native.cc4
-rw-r--r--libqpdf/BufferInputSource.cc4
-rw-r--r--libqpdf/ClosedFileInputSource.cc6
-rw-r--r--libqpdf/ContentNormalizer.cc4
-rw-r--r--libqpdf/CryptoRandomDataProvider.cc8
-rw-r--r--libqpdf/FileInputSource.cc2
-rw-r--r--libqpdf/InputSource.cc8
-rw-r--r--libqpdf/InsecureRandomDataProvider.cc4
-rw-r--r--libqpdf/JSON.cc32
-rw-r--r--libqpdf/JSONHandler.cc4
-rw-r--r--libqpdf/OffsetInputSource.cc4
-rw-r--r--libqpdf/Pipeline.cc4
-rw-r--r--libqpdf/Pl_AES_PDF.cc4
-rw-r--r--libqpdf/Pl_ASCII85Decoder.cc4
-rw-r--r--libqpdf/Pl_ASCIIHexDecoder.cc4
-rw-r--r--libqpdf/Pl_Buffer.cc6
-rw-r--r--libqpdf/Pl_Concatenate.cc10
-rw-r--r--libqpdf/Pl_Count.cc6
-rw-r--r--libqpdf/Pl_DCT.cc6
-rw-r--r--libqpdf/Pl_Discard.cc10
-rw-r--r--libqpdf/Pl_Flate.cc2
-rw-r--r--libqpdf/Pl_LZWDecoder.cc4
-rw-r--r--libqpdf/Pl_MD5.cc4
-rw-r--r--libqpdf/Pl_PNGFilter.cc4
-rw-r--r--libqpdf/Pl_QPDFTokenizer.cc6
-rw-r--r--libqpdf/Pl_RC4.cc4
-rw-r--r--libqpdf/Pl_RunLength.cc6
-rw-r--r--libqpdf/Pl_SHA2.cc4
-rw-r--r--libqpdf/Pl_StdioFile.cc6
-rw-r--r--libqpdf/Pl_TIFFPredictor.cc4
-rw-r--r--libqpdf/QPDF.cc4
-rw-r--r--libqpdf/QPDFAcroFormDocumentHelper.cc4
-rw-r--r--libqpdf/QPDFAnnotationObjectHelper.cc8
-rw-r--r--libqpdf/QPDFEFStreamObjectHelper.cc4
-rw-r--r--libqpdf/QPDFEmbeddedFileDocumentHelper.cc4
-rw-r--r--libqpdf/QPDFFileSpecObjectHelper.cc4
-rw-r--r--libqpdf/QPDFFormFieldObjectHelper.cc12
-rw-r--r--libqpdf/QPDFJob.cc13
-rw-r--r--libqpdf/QPDFNameTreeObjectHelper.cc8
-rw-r--r--libqpdf/QPDFNumberTreeObjectHelper.cc4
-rw-r--r--libqpdf/QPDFObjectHandle.cc10
-rw-r--r--libqpdf/QPDFOutlineDocumentHelper.cc12
-rw-r--r--libqpdf/QPDFOutlineObjectHelper.cc4
-rw-r--r--libqpdf/QPDFPageDocumentHelper.cc8
-rw-r--r--libqpdf/QPDFPageLabelDocumentHelper.cc8
-rw-r--r--libqpdf/QPDFPageObjectHelper.cc16
-rw-r--r--libqpdf/QPDFSystemError.cc4
-rw-r--r--libqpdf/QPDFTokenizer.cc8
-rw-r--r--libqpdf/QPDFWriter.cc4
-rw-r--r--libqpdf/QPDF_Array.cc4
-rw-r--r--libqpdf/QPDF_Bool.cc4
-rw-r--r--libqpdf/QPDF_Dictionary.cc4
-rw-r--r--libqpdf/QPDF_InlineImage.cc4
-rw-r--r--libqpdf/QPDF_Integer.cc4
-rw-r--r--libqpdf/QPDF_Name.cc4
-rw-r--r--libqpdf/QPDF_Null.cc4
-rw-r--r--libqpdf/QPDF_Operator.cc4
-rw-r--r--libqpdf/QPDF_Real.cc4
-rw-r--r--libqpdf/QPDF_Reserved.cc4
-rw-r--r--libqpdf/QPDF_Stream.cc4
-rw-r--r--libqpdf/QPDF_String.cc4
-rw-r--r--libqpdf/SecureRandomDataProvider.cc8
-rw-r--r--libqpdf/qpdf-c.cc6
-rw-r--r--libqpdf/qpdf/AES_PDF_native.hh2
-rw-r--r--libqpdf/qpdf/ContentNormalizer.hh2
-rw-r--r--libqpdf/qpdf/CryptoRandomDataProvider.hh4
-rw-r--r--libqpdf/qpdf/InsecureRandomDataProvider.hh2
-rw-r--r--libqpdf/qpdf/JSONHandler.hh2
-rw-r--r--libqpdf/qpdf/OffsetInputSource.hh2
-rw-r--r--libqpdf/qpdf/Pl_AES_PDF.hh2
-rw-r--r--libqpdf/qpdf/Pl_ASCII85Decoder.hh2
-rw-r--r--libqpdf/qpdf/Pl_ASCIIHexDecoder.hh2
-rw-r--r--libqpdf/qpdf/Pl_LZWDecoder.hh2
-rw-r--r--libqpdf/qpdf/Pl_MD5.hh2
-rw-r--r--libqpdf/qpdf/Pl_PNGFilter.hh2
-rw-r--r--libqpdf/qpdf/Pl_RC4.hh2
-rw-r--r--libqpdf/qpdf/Pl_SHA2.hh2
-rw-r--r--libqpdf/qpdf/Pl_TIFFPredictor.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Array.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Bool.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Dictionary.hh2
-rw-r--r--libqpdf/qpdf/QPDF_InlineImage.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Integer.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Name.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Null.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Operator.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Real.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Reserved.hh2
-rw-r--r--libqpdf/qpdf/QPDF_Stream.hh2
-rw-r--r--libqpdf/qpdf/QPDF_String.hh2
-rw-r--r--libqpdf/qpdf/SecureRandomDataProvider.hh4
-rw-r--r--libtests/dct_compress.cc4
-rw-r--r--libtests/input_source.cc4
-rw-r--r--libtests/random.cc8
-rw-r--r--qpdf/test_driver.cc17
-rw-r--r--qpdf/test_large_file.cc12
-rw-r--r--qpdf/test_tokenizer.cc4
144 files changed, 196 insertions, 591 deletions
diff --git a/README-maintainer b/README-maintainer
index 52c10810..f4c54324 100644
--- a/README-maintainer
+++ b/README-maintainer
@@ -165,6 +165,18 @@ CODING RULES
or QPDFDocumentHelper subclasses since there's no reason to use
dynamic_cast with those.
+ IMPORTANT NOTE ABOUT QPDF_DLL_CLASS: On mingw, the vtable for a
+ class with some virtual methods and no pure virtual methods seems
+ often (always?) not to be generated if the destructor is inline or
+ declared with `= default`. Therefore, for any class that is intended
+ to be used as a base class and doesn't contain any pure virtual
+ methods, you must declare the destructor in the header without
+ `= default` and provide a non-inline implementation in the source
+ file. Add this comment to the implementation:
+
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
+
* Put private member variables in std::shared_ptr<Members> for all
public classes. Remember to use QPDF_DLL on ~Members(). Exception:
indirection through std::shared_ptr<Members> is expensive, so don't
diff --git a/TODO b/TODO
index 7609b02e..0309603a 100644
--- a/TODO
+++ b/TODO
@@ -483,14 +483,10 @@ Comments appear in the code prefixed by "ABI"
* Switch default --json to latest
* See where anonymous namespaces can be used to keep things private to
a source file. Search for `(class|struct)` in **/*.cc.
-* See if we can use constructor delegation instead of init() in
- classes with overloaded constructors.
* After removing legacy QPDFNameTreeObjectHelper and
QPDFNumberTreeObjectHelper constructors, NNTreeImpl can switch to
having a QPDF reference and assume that the reference is always
valid.
-* Use `= delete` and `= default` for constructors and destructors
- where possible
* Having QPDFObjectHandle setters return Class& to allow for
use of fluent interfaces. This includes array and dictionary
mutators.
diff --git a/examples/pdf-count-strings.cc b/examples/pdf-count-strings.cc
index a52b7a37..23f4b6cb 100644
--- a/examples/pdf-count-strings.cc
+++ b/examples/pdf-count-strings.cc
@@ -32,9 +32,7 @@ class StringCounter: public QPDFObjectHandle::TokenFilter
count(0)
{
}
- virtual ~StringCounter()
- {
- }
+ virtual ~StringCounter() = default;
virtual void handleToken(QPDFTokenizer::Token const&);
virtual void handleEOF();
int getCount() const;
diff --git a/examples/pdf-create.cc b/examples/pdf-create.cc
index a7b7557e..b5adb01a 100644
--- a/examples/pdf-create.cc
+++ b/examples/pdf-create.cc
@@ -28,7 +28,7 @@ class ImageProvider: public QPDFObjectHandle::StreamDataProvider
{
public:
ImageProvider(std::string const& color_space, std::string const& filter);
- virtual ~ImageProvider();
+ virtual ~ImageProvider() = default;
virtual void
provideStreamData(int objid, int generation, Pipeline* pipeline);
size_t getWidth() const;
@@ -80,10 +80,6 @@ ImageProvider::ImageProvider(
}
}
-ImageProvider::~ImageProvider()
-{
-}
-
size_t
ImageProvider::getWidth() const
{
diff --git a/examples/pdf-filter-tokens.cc b/examples/pdf-filter-tokens.cc
index eee90c33..59c85271 100644
--- a/examples/pdf-filter-tokens.cc
+++ b/examples/pdf-filter-tokens.cc
@@ -35,9 +35,7 @@ usage()
class StringReverser: public QPDFObjectHandle::TokenFilter
{
public:
- virtual ~StringReverser()
- {
- }
+ virtual ~StringReverser() = default;
virtual void handleToken(QPDFTokenizer::Token const&);
};
@@ -70,9 +68,7 @@ StringReverser::handleToken(QPDFTokenizer::Token const& token)
class ColorToGray: public QPDFObjectHandle::TokenFilter
{
public:
- virtual ~ColorToGray()
- {
- }
+ virtual ~ColorToGray() = default;
virtual void handleToken(QPDFTokenizer::Token const&);
virtual void handleEOF();
diff --git a/examples/pdf-invert-images.cc b/examples/pdf-invert-images.cc
index 033e3622..2ce8f988 100644
--- a/examples/pdf-invert-images.cc
+++ b/examples/pdf-invert-images.cc
@@ -33,9 +33,7 @@ usage()
class ImageInverter: public QPDFObjectHandle::StreamDataProvider
{
public:
- virtual ~ImageInverter()
- {
- }
+ virtual ~ImageInverter() = default;
virtual void
provideStreamData(int objid, int generation, Pipeline* pipeline) override;
diff --git a/examples/pdf-parse-content.cc b/examples/pdf-parse-content.cc
index f1f7ab55..6bc94da2 100644
--- a/examples/pdf-parse-content.cc
+++ b/examples/pdf-parse-content.cc
@@ -23,10 +23,7 @@ usage()
class ParserCallbacks: public QPDFObjectHandle::ParserCallbacks
{
public:
- virtual ~ParserCallbacks()
- {
- }
-
+ virtual ~ParserCallbacks() = default;
virtual void contentSize(size_t);
virtual void handleObject(QPDFObjectHandle, size_t offset, size_t length);
virtual void handleEOF();
diff --git a/fuzz/qpdf_fuzzer.cc b/fuzz/qpdf_fuzzer.cc
index 15469782..aba08c7f 100644
--- a/fuzz/qpdf_fuzzer.cc
+++ b/fuzz/qpdf_fuzzer.cc
@@ -14,9 +14,7 @@
class DiscardContents: public QPDFObjectHandle::ParserCallbacks
{
public:
- virtual ~DiscardContents()
- {
- }
+ virtual ~DiscardContents() = default;
virtual void
handleObject(QPDFObjectHandle)
{
diff --git a/include/qpdf/Buffer.hh b/include/qpdf/Buffer.hh
index d725006a..fdb07ba7 100644
--- a/include/qpdf/Buffer.hh
+++ b/include/qpdf/Buffer.hh
@@ -66,7 +66,7 @@ class Buffer
private:
Members(size_t size, unsigned char* buf, bool own_memory);
- Members(Members const&);
+ Members(Members const&) = delete;
bool own_memory;
size_t size;
diff --git a/include/qpdf/BufferInputSource.hh b/include/qpdf/BufferInputSource.hh
index 53c362a9..b965704f 100644
--- a/include/qpdf/BufferInputSource.hh
+++ b/include/qpdf/BufferInputSource.hh
@@ -60,11 +60,11 @@ class QPDF_DLL_CLASS BufferInputSource: public InputSource
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members(bool own_memory, std::string const& description, Buffer* buf);
- Members(Members const&);
+ Members(Members const&) = delete;
bool own_memory;
std::string description;
diff --git a/include/qpdf/ClosedFileInputSource.hh b/include/qpdf/ClosedFileInputSource.hh
index e82c4410..c72a1df8 100644
--- a/include/qpdf/ClosedFileInputSource.hh
+++ b/include/qpdf/ClosedFileInputSource.hh
@@ -79,7 +79,7 @@ class QPDF_DLL_CLASS ClosedFileInputSource: public InputSource
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members(char const* filename);
diff --git a/include/qpdf/FileInputSource.hh b/include/qpdf/FileInputSource.hh
index c3b60265..1b4f5d6a 100644
--- a/include/qpdf/FileInputSource.hh
+++ b/include/qpdf/FileInputSource.hh
@@ -64,7 +64,7 @@ class QPDF_DLL_CLASS FileInputSource: public InputSource
private:
Members(bool close_file);
- Members(Members const&);
+ Members(Members const&) = delete;
bool close_file;
std::string filename;
diff --git a/include/qpdf/InputSource.hh b/include/qpdf/InputSource.hh
index 94dec500..9feb8ec3 100644
--- a/include/qpdf/InputSource.hh
+++ b/include/qpdf/InputSource.hh
@@ -42,20 +42,13 @@ class QPDF_DLL_CLASS InputSource
{
}
QPDF_DLL
- virtual ~InputSource()
- {
- }
+ virtual ~InputSource() = default;
class QPDF_DLL_CLASS Finder
{
public:
- Finder()
- {
- }
- virtual ~Finder()
- {
- }
-
+ Finder() = default;
+ virtual ~Finder() = default;
virtual bool check() = 0;
};
@@ -110,11 +103,11 @@ class QPDF_DLL_CLASS InputSource
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
- Members();
- Members(Members const&);
+ Members() = default;
+ Members(Members const&) = delete;
};
std::shared_ptr<Members> m;
diff --git a/include/qpdf/JSON.hh b/include/qpdf/JSON.hh
index 2961d8a9..a2a0ea27 100644
--- a/include/qpdf/JSON.hh
+++ b/include/qpdf/JSON.hh
@@ -150,25 +150,25 @@ class JSON
struct JSON_value
{
- virtual ~JSON_value();
+ virtual ~JSON_value() = default;
virtual std::string unparse(size_t depth) const = 0;
};
struct JSON_dictionary: public JSON_value
{
- virtual ~JSON_dictionary();
+ virtual ~JSON_dictionary() = default;
virtual std::string unparse(size_t depth) const;
std::map<std::string, std::shared_ptr<JSON_value>> members;
};
struct JSON_array: public JSON_value
{
- virtual ~JSON_array();
+ virtual ~JSON_array() = default;
virtual std::string unparse(size_t depth) const;
std::vector<std::shared_ptr<JSON_value>> elements;
};
struct JSON_string: public JSON_value
{
JSON_string(std::string const& utf8);
- virtual ~JSON_string();
+ virtual ~JSON_string() = default;
virtual std::string unparse(size_t depth) const;
std::string utf8;
std::string encoded;
@@ -178,20 +178,20 @@ class JSON
JSON_number(long long val);
JSON_number(double val);
JSON_number(std::string const& val);
- virtual ~JSON_number();
+ virtual ~JSON_number() = default;
virtual std::string unparse(size_t depth) const;
std::string encoded;
};
struct JSON_bool: public JSON_value
{
JSON_bool(bool val);
- virtual ~JSON_bool();
+ virtual ~JSON_bool() = default;
virtual std::string unparse(size_t depth) const;
bool value;
};
struct JSON_null: public JSON_value
{
- virtual ~JSON_null();
+ virtual ~JSON_null() = default;
virtual std::string unparse(size_t depth) const;
};
@@ -210,11 +210,11 @@ class JSON
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members(std::shared_ptr<JSON_value>);
- Members(Members const&);
+ Members(Members const&) = delete;
std::shared_ptr<JSON_value> value;
};
diff --git a/include/qpdf/Pipeline.hh b/include/qpdf/Pipeline.hh
index 2a2f9d3c..09ec0925 100644
--- a/include/qpdf/Pipeline.hh
+++ b/include/qpdf/Pipeline.hh
@@ -59,7 +59,7 @@ class QPDF_DLL_CLASS Pipeline
Pipeline(char const* identifier, Pipeline* next);
QPDF_DLL
- virtual ~Pipeline();
+ virtual ~Pipeline() = default;
// Subclasses should implement write and finish to do their jobs
// and then, if they are not end-of-line pipelines, call
diff --git a/include/qpdf/Pl_Buffer.hh b/include/qpdf/Pl_Buffer.hh
index f72646f0..d9aec078 100644
--- a/include/qpdf/Pl_Buffer.hh
+++ b/include/qpdf/Pl_Buffer.hh
@@ -77,11 +77,11 @@ class QPDF_DLL_CLASS Pl_Buffer: public Pipeline
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members();
- Members(Members const&);
+ Members(Members const&) = delete;
bool ready;
std::shared_ptr<Buffer> data;
diff --git a/include/qpdf/Pl_Concatenate.hh b/include/qpdf/Pl_Concatenate.hh
index 702c48e4..1f4e2f40 100644
--- a/include/qpdf/Pl_Concatenate.hh
+++ b/include/qpdf/Pl_Concatenate.hh
@@ -56,11 +56,11 @@ class QPDF_DLL_CLASS Pl_Concatenate: public Pipeline
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
- Members();
- Members(Members const&);
+ Members() = default;
+ Members(Members const&) = delete;
};
std::shared_ptr<Members> m;
diff --git a/include/qpdf/Pl_Count.hh b/include/qpdf/Pl_Count.hh
index 8d9bc6b7..d0bf8cb3 100644
--- a/include/qpdf/Pl_Count.hh
+++ b/include/qpdf/Pl_Count.hh
@@ -54,11 +54,11 @@ class QPDF_DLL_CLASS Pl_Count: public Pipeline
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members();
- Members(Members const&);
+ Members(Members const&) = delete;
// Must be qpdf_offset_t, not size_t, to handle writing more than
// size_t can handle.
diff --git a/include/qpdf/Pl_DCT.hh b/include/qpdf/Pl_DCT.hh
index 0bbf302b..3503ac77 100644
--- a/include/qpdf/Pl_DCT.hh
+++ b/include/qpdf/Pl_DCT.hh
@@ -41,12 +41,8 @@ class QPDF_DLL_CLASS Pl_DCT: public Pipeline
class QPDF_DLL_CLASS CompressConfig
{
public:
- CompressConfig()
- {
- }
- virtual ~CompressConfig()
- {
- }
+ CompressConfig() = default;
+ virtual ~CompressConfig() = default;
virtual void apply(jpeg_compress_struct*) = 0;
};
@@ -83,7 +79,7 @@ class QPDF_DLL_CLASS Pl_DCT: public Pipeline
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members(
@@ -94,7 +90,7 @@ class QPDF_DLL_CLASS Pl_DCT: public Pipeline
int components = 1,
J_COLOR_SPACE color_space = JCS_GRAYSCALE,
CompressConfig* config_callback = 0);
- Members(Members const&);
+ Members(Members const&) = delete;
action_e action;
Pl_Buffer buf;
diff --git a/include/qpdf/Pl_Discard.hh b/include/qpdf/Pl_Discard.hh
index 051f9fe1..c58c162a 100644
--- a/include/qpdf/Pl_Discard.hh
+++ b/include/qpdf/Pl_Discard.hh
@@ -49,11 +49,11 @@ class QPDF_DLL_CLASS Pl_Discard: public Pipeline
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
- Members();
- Members(Members const&);
+ Members() = default;
+ Members(Members const&) = delete;
};
std::shared_ptr<Members> m;
diff --git a/include/qpdf/Pl_Flate.hh b/include/qpdf/Pl_Flate.hh
index 5cfe17f4..daf05836 100644
--- a/include/qpdf/Pl_Flate.hh
+++ b/include/qpdf/Pl_Flate.hh
@@ -80,7 +80,7 @@ class QPDF_DLL_CLASS Pl_Flate: public Pipeline
private:
Members(size_t out_bufsize, action_e action);
- Members(Members const&);
+ Members(Members const&) = delete;
std::shared_ptr<unsigned char> outbuf;
size_t out_bufsize;
diff --git a/include/qpdf/Pl_QPDFTokenizer.hh b/include/qpdf/Pl_QPDFTokenizer.hh
index d5b531e2..20f36603 100644
--- a/include/qpdf/Pl_QPDFTokenizer.hh
+++ b/include/qpdf/Pl_QPDFTokenizer.hh
@@ -66,11 +66,11 @@ class QPDF_DLL_CLASS Pl_QPDFTokenizer: public Pipeline
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members();
- Members(Members const&);
+ Members(Members const&) = delete;
QPDFObjectHandle::TokenFilter* filter;
QPDFTokenizer tokenizer;
diff --git a/include/qpdf/Pl_RunLength.hh b/include/qpdf/Pl_RunLength.hh
index ce2b0e90..47c72d65 100644
--- a/include/qpdf/Pl_RunLength.hh
+++ b/include/qpdf/Pl_RunLength.hh
@@ -55,11 +55,11 @@ class QPDF_DLL_CLASS Pl_RunLength: public Pipeline
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members(action_e);
- Members(Members const&);
+ Members(Members const&) = delete;
action_e action;
state_e state;
diff --git a/include/qpdf/Pl_StdioFile.hh b/include/qpdf/Pl_StdioFile.hh
index 64f4738d..1dfb6c99 100644
--- a/include/qpdf/Pl_StdioFile.hh
+++ b/include/qpdf/Pl_StdioFile.hh
@@ -54,11 +54,11 @@ class QPDF_DLL_CLASS Pl_StdioFile: public Pipeline
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members(FILE*);
- Members(Members const&);
+ Members(Members const&) = delete;
FILE* file;
};
diff --git a/include/qpdf/QPDF.hh b/include/qpdf/QPDF.hh
index bc0096b7..e704c2f8 100644
--- a/include/qpdf/QPDF.hh
+++ b/include/qpdf/QPDF.hh
@@ -913,9 +913,7 @@ class QPDF
{
public:
CopiedStreamDataProvider(QPDF& destination_qpdf);
- virtual ~CopiedStreamDataProvider()
- {
- }
+ virtual ~CopiedStreamDataProvider() = default;
virtual bool provideStreamData(
int objid,
int generation,
@@ -940,9 +938,7 @@ class QPDF
public:
StringDecrypter(QPDF* qpdf, int objid, int gen);
- virtual ~StringDecrypter()
- {
- }
+ virtual ~StringDecrypter() = default;
virtual void decryptString(std::string& val);
private:
@@ -1381,9 +1377,7 @@ class QPDF
checker(checker)
{
}
- virtual ~PatternFinder()
- {
- }
+ virtual ~PatternFinder() = default;
virtual bool
check()
{
@@ -1509,11 +1503,11 @@ class QPDF
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members();
- Members(Members const&);
+ Members(Members const&) = delete;
unsigned long long unique_id;
QPDFTokenizer tokenizer;
diff --git a/include/qpdf/QPDFAcroFormDocumentHelper.hh b/include/qpdf/QPDFAcroFormDocumentHelper.hh
index 5347dcd9..690aecfd 100644
--- a/include/qpdf/QPDFAcroFormDocumentHelper.hh
+++ b/include/qpdf/QPDFAcroFormDocumentHelper.hh
@@ -85,9 +85,7 @@ class QPDFAcroFormDocumentHelper: public QPDFDocumentHelper
QPDF_DLL
QPDFAcroFormDocumentHelper(QPDF&);
QPDF_DLL
- virtual ~QPDFAcroFormDocumentHelper()
- {
- }
+ virtual ~QPDFAcroFormDocumentHelper() = default;
// This class lazily creates an internal cache of the mapping
// among form fields, annotations, and pages. Methods within this
@@ -291,11 +289,11 @@ class QPDFAcroFormDocumentHelper: public QPDFDocumentHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members();
- Members(Members const&);
+ Members(Members const&) = delete;
bool cache_valid;
std::map<QPDFObjGen, std::vector<QPDFAnnotationObjectHelper>>
diff --git a/include/qpdf/QPDFAnnotationObjectHelper.hh b/include/qpdf/QPDFAnnotationObjectHelper.hh
index de408abd..2f0bc6b9 100644
--- a/include/qpdf/QPDFAnnotationObjectHelper.hh
+++ b/include/qpdf/QPDFAnnotationObjectHelper.hh
@@ -33,9 +33,7 @@ class QPDFAnnotationObjectHelper: public QPDFObjectHelper
QPDF_DLL
QPDFAnnotationObjectHelper(QPDFObjectHandle);
QPDF_DLL
- virtual ~QPDFAnnotationObjectHelper()
- {
- }
+ virtual ~QPDFAnnotationObjectHelper() = default;
// This class provides helper methods for annotations. More
// functionality will likely be added in the future.
@@ -108,11 +106,11 @@ class QPDFAnnotationObjectHelper: public QPDFObjectHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
- Members();
- Members(Members const&);
+ Members() = default;
+ Members(Members const&) = delete;
};
std::shared_ptr<Members> m;
diff --git a/include/qpdf/QPDFDocumentHelper.hh b/include/qpdf/QPDFDocumentHelper.hh
index d33e90b8..55fe3c9c 100644
--- a/include/qpdf/QPDFDocumentHelper.hh
+++ b/include/qpdf/QPDFDocumentHelper.hh
@@ -45,9 +45,7 @@ class QPDFDocumentHelper
{
}
QPDF_DLL
- virtual ~QPDFDocumentHelper()
- {
- }
+ virtual ~QPDFDocumentHelper() = default;
QPDF_DLL
QPDF&
getQPDF()
diff --git a/include/qpdf/QPDFEFStreamObjectHelper.hh b/include/qpdf/QPDFEFStreamObjectHelper.hh
index afcc5bd2..b39b6a7a 100644
--- a/include/qpdf/QPDFEFStreamObjectHelper.hh
+++ b/include/qpdf/QPDFEFStreamObjectHelper.hh
@@ -112,7 +112,7 @@ class QPDFEFStreamObjectHelper: public QPDFObjectHelper
~Members() = default;
private:
- Members();
+ Members() = default;
Members(Members const&) = delete;
};
diff --git a/include/qpdf/QPDFEmbeddedFileDocumentHelper.hh b/include/qpdf/QPDFEmbeddedFileDocumentHelper.hh
index f09e8c24..0243be4e 100644
--- a/include/qpdf/QPDFEmbeddedFileDocumentHelper.hh
+++ b/include/qpdf/QPDFEmbeddedFileDocumentHelper.hh
@@ -85,7 +85,7 @@ class QPDFEmbeddedFileDocumentHelper: public QPDFDocumentHelper
~Members() = default;
private:
- Members();
+ Members() = default;
Members(Members const&) = delete;
std::shared_ptr<QPDFNameTreeObjectHelper> embedded_files;
diff --git a/include/qpdf/QPDFExc.hh b/include/qpdf/QPDFExc.hh
index d9d7312b..c596e072 100644
--- a/include/qpdf/QPDFExc.hh
+++ b/include/qpdf/QPDFExc.hh
@@ -40,9 +40,7 @@ class QPDF_DLL_CLASS QPDFExc: public std::runtime_error
qpdf_offset_t offset,
std::string const& message);
QPDF_DLL
- virtual ~QPDFExc() noexcept
- {
- }
+ virtual ~QPDFExc() noexcept = default;
// To get a complete error string, call what(), provided by
// std::exception. The accessors below return the original values
diff --git a/include/qpdf/QPDFFileSpecObjectHelper.hh b/include/qpdf/QPDFFileSpecObjectHelper.hh
index d0b4f185..30f4eed9 100644
--- a/include/qpdf/QPDFFileSpecObjectHelper.hh
+++ b/include/qpdf/QPDFFileSpecObjectHelper.hh
@@ -109,7 +109,7 @@ class QPDFFileSpecObjectHelper: public QPDFObjectHelper
~Members() = default;
private:
- Members();
+ Members() = default;
Members(Members const&) = delete;
};
diff --git a/include/qpdf/QPDFFormFieldObjectHelper.hh b/include/qpdf/QPDFFormFieldObjectHelper.hh
index e5ffeef2..4bad5d1e 100644
--- a/include/qpdf/QPDFFormFieldObjectHelper.hh
+++ b/include/qpdf/QPDFFormFieldObjectHelper.hh
@@ -41,9 +41,7 @@ class QPDFFormFieldObjectHelper: public QPDFObjectHelper
QPDF_DLL
QPDFFormFieldObjectHelper(QPDFObjectHandle);
QPDF_DLL
- virtual ~QPDFFormFieldObjectHelper()
- {
- }
+ virtual ~QPDFFormFieldObjectHelper() = default;
QPDF_DLL
bool isNull();
@@ -229,11 +227,11 @@ class QPDFFormFieldObjectHelper: public QPDFObjectHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
- Members();
- Members(Members const&);
+ Members() = default;
+ Members(Members const&) = delete;
};
std::shared_ptr<Members> m;
diff --git a/include/qpdf/QPDFNameTreeObjectHelper.hh b/include/qpdf/QPDFNameTreeObjectHelper.hh
index 11d7b5a2..194fc926 100644
--- a/include/qpdf/QPDFNameTreeObjectHelper.hh
+++ b/include/qpdf/QPDFNameTreeObjectHelper.hh
@@ -62,7 +62,7 @@ class QPDFNameTreeObjectHelper: public QPDFObjectHelper
static QPDFNameTreeObjectHelper newEmpty(QPDF&, bool auto_repair = true);
QPDF_DLL
- virtual ~QPDFNameTreeObjectHelper();
+ virtual ~QPDFNameTreeObjectHelper() = default;
// Return whether the number tree has an explicit entry for this
// number.
@@ -194,7 +194,7 @@ class QPDFNameTreeObjectHelper: public QPDFObjectHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members(QPDFObjectHandle& oh, QPDF*, bool auto_repair);
diff --git a/include/qpdf/QPDFNumberTreeObjectHelper.hh b/include/qpdf/QPDFNumberTreeObjectHelper.hh
index bb34373c..4dbef98a 100644
--- a/include/qpdf/QPDFNumberTreeObjectHelper.hh
+++ b/include/qpdf/QPDFNumberTreeObjectHelper.hh
@@ -55,11 +55,8 @@ class QPDFNumberTreeObjectHelper: public QPDFObjectHelper
[[deprecated("use constructor that takes QPDF&")]] QPDF_DLL
QPDFNumberTreeObjectHelper(QPDFObjectHandle);
- // ABI: = default
QPDF_DLL
- virtual ~QPDFNumberTreeObjectHelper()
- {
- }
+ virtual ~QPDFNumberTreeObjectHelper() = default;
// Create an empty number tree
QPDF_DLL
@@ -217,7 +214,7 @@ class QPDFNumberTreeObjectHelper: public QPDFObjectHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members(QPDFObjectHandle& oh, QPDF*, bool auto_repair);
diff --git a/include/qpdf/QPDFObject.hh b/include/qpdf/QPDFObject.hh
index 897a61dd..43146e53 100644
--- a/include/qpdf/QPDFObject.hh
+++ b/include/qpdf/QPDFObject.hh
@@ -62,9 +62,7 @@ class QPDFObject
static constexpr object_type_e ot_operator = ::ot_operator;
static constexpr object_type_e ot_inlineimage = ::ot_inlineimage;
- virtual ~QPDFObject()
- {
- }
+ virtual ~QPDFObject() = default;
virtual std::string unparse() = 0;
virtual JSON getJSON() = 0;
diff --git a/include/qpdf/QPDFObjectHandle.hh b/include/qpdf/QPDFObjectHandle.hh
index a09fd954..5b2a6764 100644
--- a/include/qpdf/QPDFObjectHandle.hh
+++ b/include/qpdf/QPDFObjectHandle.hh
@@ -64,9 +64,7 @@ class QPDFObjectHandle
StreamDataProvider(bool supports_retry = false);
QPDF_DLL
- virtual ~StreamDataProvider()
- {
- }
+ virtual ~StreamDataProvider();
// The implementation of this function must write stream data
// to the given pipeline. The stream data must conform to
// whatever filters are explicitly associated with the stream.
@@ -172,13 +170,9 @@ class QPDFObjectHandle
{
public:
QPDF_DLL
- TokenFilter()
- {
- }
+ TokenFilter() = default;
QPDF_DLL
- virtual ~TokenFilter()
- {
- }
+ virtual ~TokenFilter() = default;
virtual void handleToken(QPDFTokenizer::Token const&) = 0;
QPDF_DLL
virtual void handleEOF();
@@ -216,9 +210,7 @@ class QPDFObjectHandle
{
public:
QPDF_DLL
- virtual ~StringDecrypter()
- {
- }
+ virtual ~StringDecrypter() = default;
virtual void decryptString(std::string& val) = 0;
};
@@ -229,9 +221,7 @@ class QPDFObjectHandle
{
public:
QPDF_DLL
- virtual ~ParserCallbacks()
- {
- }
+ virtual ~ParserCallbacks() = default;
// One of the handleObject methods must be overridden.
QPDF_DLL
virtual void handleObject(QPDFObjectHandle);
diff --git a/include/qpdf/QPDFObjectHelper.hh b/include/qpdf/QPDFObjectHelper.hh
index 32577681..db3876ec 100644
--- a/include/qpdf/QPDFObjectHelper.hh
+++ b/include/qpdf/QPDFObjectHelper.hh
@@ -46,9 +46,7 @@ class QPDFObjectHelper
{
}
QPDF_DLL
- virtual ~QPDFObjectHelper()
- {
- }
+ virtual ~QPDFObjectHelper() = default;
QPDF_DLL
QPDFObjectHandle
getObjectHandle()
diff --git a/include/qpdf/QPDFOutlineDocumentHelper.hh b/include/qpdf/QPDFOutlineDocumentHelper.hh
index 2049a072..28328c71 100644
--- a/include/qpdf/QPDFOutlineDocumentHelper.hh
+++ b/include/qpdf/QPDFOutlineDocumentHelper.hh
@@ -45,7 +45,7 @@ class QPDFOutlineDocumentHelper: public QPDFDocumentHelper
QPDF_DLL
QPDFOutlineDocumentHelper(QPDF&);
QPDF_DLL
- virtual ~QPDFOutlineDocumentHelper();
+ virtual ~QPDFOutlineDocumentHelper() = default;
QPDF_DLL
bool hasOutlines();
@@ -88,11 +88,11 @@ class QPDFOutlineDocumentHelper: public QPDFDocumentHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
- Members();
- Members(Members const&);
+ Members() = default;
+ Members(Members const&) = delete;
std::vector<QPDFOutlineObjectHelper> outlines;
std::set<QPDFObjGen> seen;
diff --git a/include/qpdf/QPDFOutlineObjectHelper.hh b/include/qpdf/QPDFOutlineObjectHelper.hh
index ece5acf0..6c91909c 100644
--- a/include/qpdf/QPDFOutlineObjectHelper.hh
+++ b/include/qpdf/QPDFOutlineObjectHelper.hh
@@ -105,11 +105,11 @@ class QPDFOutlineObjectHelper: public QPDFObjectHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members(QPDFOutlineDocumentHelper& dh);
- Members(Members const&);
+ Members(Members const&) = delete;
QPDFOutlineDocumentHelper& dh;
std::shared_ptr<QPDFOutlineObjectHelper> parent;
diff --git a/include/qpdf/QPDFPageDocumentHelper.hh b/include/qpdf/QPDFPageDocumentHelper.hh
index 2ffa8dd1..f8b2ac7e 100644
--- a/include/qpdf/QPDFPageDocumentHelper.hh
+++ b/include/qpdf/QPDFPageDocumentHelper.hh
@@ -40,9 +40,7 @@ class QPDFPageDocumentHelper: public QPDFDocumentHelper
QPDF_DLL
QPDFPageDocumentHelper(QPDF&);
QPDF_DLL
- virtual ~QPDFPageDocumentHelper()
- {
- }
+ virtual ~QPDFPageDocumentHelper() = default;
// Traverse page tree, and return all /Page objects wrapped in
// QPDFPageObjectHelper objects. Unlike with
@@ -144,11 +142,11 @@ class QPDFPageDocumentHelper: public QPDFDocumentHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
- Members();
- Members(Members const&);
+ Members() = default;
+ Members(Members const&) = delete;
};
std::shared_ptr<Members> m;
diff --git a/include/qpdf/QPDFPageLabelDocumentHelper.hh b/include/qpdf/QPDFPageLabelDocumentHelper.hh
index eef2accc..76aade9c 100644
--- a/include/qpdf/QPDFPageLabelDocumentHelper.hh
+++ b/include/qpdf/QPDFPageLabelDocumentHelper.hh
@@ -50,9 +50,7 @@ class QPDFPageLabelDocumentHelper: public QPDFDocumentHelper
QPDF_DLL
QPDFPageLabelDocumentHelper(QPDF&);
QPDF_DLL
- virtual ~QPDFPageLabelDocumentHelper()
- {
- }
+ virtual ~QPDFPageLabelDocumentHelper() = default;
QPDF_DLL
bool hasPageLabels();
@@ -90,11 +88,11 @@ class QPDFPageLabelDocumentHelper: public QPDFDocumentHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
- Members();
- Members(Members const&);
+ Members() = default;
+ Members(Members const&) = delete;
std::shared_ptr<QPDFNumberTreeObjectHelper> labels;
};
diff --git a/include/qpdf/QPDFPageObjectHelper.hh b/include/qpdf/QPDFPageObjectHelper.hh
index f35e4cf4..df4c7864 100644
--- a/include/qpdf/QPDFPageObjectHelper.hh
+++ b/include/qpdf/QPDFPageObjectHelper.hh
@@ -43,9 +43,7 @@ class QPDFPageObjectHelper: public QPDFObjectHelper
QPDF_DLL
QPDFPageObjectHelper(QPDFObjectHandle);
QPDF_DLL
- virtual ~QPDFPageObjectHelper()
- {
- }
+ virtual ~QPDFPageObjectHelper() = default;
// Works with pages and form XObjects. Return the effective value
// of this attribute for the page/form XObject. For pages, if the
@@ -384,11 +382,11 @@ class QPDFPageObjectHelper: public QPDFObjectHelper
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
- Members();
- Members(Members const&);
+ Members() = default;
+ Members(Members const&) = delete;
};
std::shared_ptr<Members> m;
diff --git a/include/qpdf/QPDFSystemError.hh b/include/qpdf/QPDFSystemError.hh
index f6c62224..22fb3fc1 100644
--- a/include/qpdf/QPDFSystemError.hh
+++ b/include/qpdf/QPDFSystemError.hh
@@ -35,7 +35,7 @@ class QPDF_DLL_CLASS QPDFSystemError: public std::runtime_error
QPDF_DLL
QPDFSystemError(std::string const& description, int system_errno);
QPDF_DLL
- virtual ~QPDFSystemError() noexcept;
+ virtual ~QPDFSystemError() noexcept = default;
// To get a complete error string, call what(), provided by
// std::exception. The accessors below return the original values
diff --git a/include/qpdf/QPDFTokenizer.hh b/include/qpdf/QPDFTokenizer.hh
index 9cd51acc..2187f21e 100644
--- a/include/qpdf/QPDFTokenizer.hh
+++ b/include/qpdf/QPDFTokenizer.hh
@@ -217,11 +217,11 @@ class QPDFTokenizer
public:
QPDF_DLL
- ~Members();
+ ~Members() = default;
private:
Members();
- Members(Members const&);
+ Members(Members const&) = delete;
void reset();
// Lexer state
diff --git a/include/qpdf/QPDFWriter.hh b/include/qpdf/QPDFWriter.hh
index c5e33fd2..5d3ad5df 100644
--- a/include/qpdf/QPDFWriter.hh
+++ b/include/qpdf/QPDFWriter.hh
@@ -75,14 +75,12 @@ class QPDFWriter
QPDFWriter(QPDF& pdf, char const* description, FILE* file, bool close_file);
QPDF_DLL
- ~QPDFWriter();
+ ~QPDFWriter() = default;
class QPDF_DLL_CLASS ProgressReporter
{
public:
- virtual ~ProgressReporter()
- {
- }
+ virtual ~ProgressReporter() = default;
// This method is called with a value from 0 to 100 to
// indicate approximate progress through the write process.
@@ -718,7 +716,7 @@ class QPDFWriter
private:
Members(QPDF& pdf);
- Members(Members const&);
+ Members(Members const&) = delete;
QPDF& pdf;
char const* filename;
diff --git a/include/qpdf/RandomDataProvider.hh b/include/qpdf/RandomDataProvider.hh
index 6b316ee1..023bf995 100644
--- a/include/qpdf/RandomDataProvider.hh
+++ b/include/qpdf/RandomDataProvider.hh
@@ -28,9 +28,7 @@
class QPDF_DLL_CLASS RandomDataProvider
{
public:
- virtual ~RandomDataProvider()
- {
- }
+ virtual ~RandomDataProvider() = default;
virtual void provideRandomData(unsigned char* data, size_t len) = 0;
protected:
diff --git a/libqpdf/AES_PDF_native.cc b/libqpdf/AES_PDF_native.cc
index a6addb53..3a831efe 100644
--- a/libqpdf/AES_PDF_native.cc
+++ b/libqpdf/AES_PDF_native.cc
@@ -36,10 +36,6 @@ AES_PDF_native::AES_PDF_native(
}
}
-AES_PDF_native::~AES_PDF_native()
-{
-}
-
void
AES_PDF_native::update(unsigned char* in_data, unsigned char* out_data)
{
diff --git a/libqpdf/BufferInputSource.cc b/libqpdf/BufferInputSource.cc
index 25e0d7c1..033ef265 100644
--- a/libqpdf/BufferInputSource.cc
+++ b/libqpdf/BufferInputSource.cc
@@ -17,10 +17,6 @@ BufferInputSource::Members::Members(
{
}
-BufferInputSource::Members::~Members()
-{
-}
-
BufferInputSource::BufferInputSource(
std::string const& description, Buffer* buf, bool own_memory) :
m(new Members(own_memory, description, buf))
diff --git a/libqpdf/ClosedFileInputSource.cc b/libqpdf/ClosedFileInputSource.cc
index 69e819c9..7c4e5dbe 100644
--- a/libqpdf/ClosedFileInputSource.cc
+++ b/libqpdf/ClosedFileInputSource.cc
@@ -9,10 +9,6 @@ ClosedFileInputSource::Members::Members(char const* filename) :
{
}
-ClosedFileInputSource::Members::~Members()
-{
-}
-
ClosedFileInputSource::ClosedFileInputSource(char const* filename) :
m(new Members(filename))
{
@@ -20,6 +16,8 @@ ClosedFileInputSource::ClosedFileInputSource(char const* filename) :
ClosedFileInputSource::~ClosedFileInputSource()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/ContentNormalizer.cc b/libqpdf/ContentNormalizer.cc
index d7f3cbd7..93f3aad1 100644
--- a/libqpdf/ContentNormalizer.cc
+++ b/libqpdf/ContentNormalizer.cc
@@ -8,10 +8,6 @@ ContentNormalizer::ContentNormalizer() :
{
}
-ContentNormalizer::~ContentNormalizer()
-{
-}
-
void
ContentNormalizer::handleToken(QPDFTokenizer::Token const& token)
{
diff --git a/libqpdf/CryptoRandomDataProvider.cc b/libqpdf/CryptoRandomDataProvider.cc
index 6792c79b..e1ae38a9 100644
--- a/libqpdf/CryptoRandomDataProvider.cc
+++ b/libqpdf/CryptoRandomDataProvider.cc
@@ -2,14 +2,6 @@
#include <qpdf/QPDFCryptoProvider.hh>
-CryptoRandomDataProvider::CryptoRandomDataProvider()
-{
-}
-
-CryptoRandomDataProvider::~CryptoRandomDataProvider()
-{
-}
-
void
CryptoRandomDataProvider::provideRandomData(unsigned char* data, size_t len)
{
diff --git a/libqpdf/FileInputSource.cc b/libqpdf/FileInputSource.cc
index c502b2a8..9b467821 100644
--- a/libqpdf/FileInputSource.cc
+++ b/libqpdf/FileInputSource.cc
@@ -42,6 +42,8 @@ FileInputSource::setFile(char const* description, FILE* filep, bool close_file)
FileInputSource::~FileInputSource()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
qpdf_offset_t
diff --git a/libqpdf/InputSource.cc b/libqpdf/InputSource.cc
index 00ebccb5..ba4c3cbc 100644
--- a/libqpdf/InputSource.cc
+++ b/libqpdf/InputSource.cc
@@ -5,14 +5,6 @@
#include <stdexcept>
#include <string.h>
-InputSource::Members::Members()
-{
-}
-
-InputSource::Members::~Members()
-{
-}
-
void
InputSource::setLastOffset(qpdf_offset_t offset)
{
diff --git a/libqpdf/InsecureRandomDataProvider.cc b/libqpdf/InsecureRandomDataProvider.cc
index b29b0f9f..cb67cada 100644
--- a/libqpdf/InsecureRandomDataProvider.cc
+++ b/libqpdf/InsecureRandomDataProvider.cc
@@ -9,10 +9,6 @@ InsecureRandomDataProvider::InsecureRandomDataProvider() :
{
}
-InsecureRandomDataProvider::~InsecureRandomDataProvider()
-{
-}
-
void
InsecureRandomDataProvider::provideRandomData(unsigned char* data, size_t len)
{
diff --git a/libqpdf/JSON.cc b/libqpdf/JSON.cc
index 4f2a14d9..c02e06b8 100644
--- a/libqpdf/JSON.cc
+++ b/libqpdf/JSON.cc
@@ -5,10 +5,6 @@
#include <cstring>
#include <stdexcept>
-JSON::Members::~Members()
-{
-}
-
JSON::Members::Members(std::shared_ptr<JSON_value> value) :
value(value)
{
@@ -19,14 +15,6 @@ JSON::JSON(std::shared_ptr<JSON_value> value) :
{
}
-JSON::JSON_value::~JSON_value()
-{
-}
-
-JSON::JSON_dictionary::~JSON_dictionary()
-{
-}
-
std::string
JSON::JSON_dictionary::unparse(size_t depth) const
{
@@ -51,10 +39,6 @@ JSON::JSON_dictionary::unparse(size_t depth) const
return result;
}
-JSON::JSON_array::~JSON_array()
-{
-}
-
std::string
JSON::JSON_array::unparse(size_t depth) const
{
@@ -84,10 +68,6 @@ JSON::JSON_string::JSON_string(std::string const& utf8) :
{
}
-JSON::JSON_string::~JSON_string()
-{
-}
-
std::string
JSON::JSON_string::unparse(size_t) const
{
@@ -109,10 +89,6 @@ JSON::JSON_number::JSON_number(std::string const& value) :
{
}
-JSON::JSON_number::~JSON_number()
-{
-}
-
std::string
JSON::JSON_number::unparse(size_t) const
{
@@ -124,20 +100,12 @@ JSON::JSON_bool::JSON_bool(bool val) :
{
}
-JSON::JSON_bool::~JSON_bool()
-{
-}
-
std::string
JSON::JSON_bool::unparse(size_t) const
{
return value ? "true" : "false";
}
-JSON::JSON_null::~JSON_null()
-{
-}
-
std::string
JSON::JSON_null::unparse(size_t) const
{
diff --git a/libqpdf/JSONHandler.cc b/libqpdf/JSONHandler.cc
index e12c2b99..909aa7db 100644
--- a/libqpdf/JSONHandler.cc
+++ b/libqpdf/JSONHandler.cc
@@ -9,10 +9,6 @@ JSONHandler::JSONHandler() :
{
}
-JSONHandler::Members::Members()
-{
-}
-
void
JSONHandler::usage(std::string const& msg)
{
diff --git a/libqpdf/OffsetInputSource.cc b/libqpdf/OffsetInputSource.cc
index cf050f2e..3ea4fb9d 100644
--- a/libqpdf/OffsetInputSource.cc
+++ b/libqpdf/OffsetInputSource.cc
@@ -17,10 +17,6 @@ OffsetInputSource::OffsetInputSource(
std::numeric_limits<qpdf_offset_t>::max() - global_offset;
}
-OffsetInputSource::~OffsetInputSource()
-{
-}
-
qpdf_offset_t
OffsetInputSource::findAndSkipNextEOL()
{
diff --git a/libqpdf/Pipeline.cc b/libqpdf/Pipeline.cc
index 87dddd5f..5c134896 100644
--- a/libqpdf/Pipeline.cc
+++ b/libqpdf/Pipeline.cc
@@ -8,10 +8,6 @@ Pipeline::Pipeline(char const* identifier, Pipeline* next) :
{
}
-Pipeline::~Pipeline()
-{
-}
-
Pipeline*
Pipeline::getNext(bool allow_null)
{
diff --git a/libqpdf/Pl_AES_PDF.cc b/libqpdf/Pl_AES_PDF.cc
index 7389cfca..80cd8534 100644
--- a/libqpdf/Pl_AES_PDF.cc
+++ b/libqpdf/Pl_AES_PDF.cc
@@ -35,10 +35,6 @@ Pl_AES_PDF::Pl_AES_PDF(
std::memset(this->cbc_block, 0, this->buf_size);
}
-Pl_AES_PDF::~Pl_AES_PDF()
-{
-}
-
void
Pl_AES_PDF::useZeroIV()
{
diff --git a/libqpdf/Pl_ASCII85Decoder.cc b/libqpdf/Pl_ASCII85Decoder.cc
index 5d1bbee2..41dad3b7 100644
--- a/libqpdf/Pl_ASCII85Decoder.cc
+++ b/libqpdf/Pl_ASCII85Decoder.cc
@@ -12,10 +12,6 @@ Pl_ASCII85Decoder::Pl_ASCII85Decoder(char const* identifier, Pipeline* next) :
memset(this->inbuf, 117, 5);
}
-Pl_ASCII85Decoder::~Pl_ASCII85Decoder()
-{
-}
-
void
Pl_ASCII85Decoder::write(unsigned char* buf, size_t len)
{
diff --git a/libqpdf/Pl_ASCIIHexDecoder.cc b/libqpdf/Pl_ASCIIHexDecoder.cc
index 654d9449..99247739 100644
--- a/libqpdf/Pl_ASCIIHexDecoder.cc
+++ b/libqpdf/Pl_ASCIIHexDecoder.cc
@@ -15,10 +15,6 @@ Pl_ASCIIHexDecoder::Pl_ASCIIHexDecoder(char const* identifier, Pipeline* next) :
this->inbuf[2] = '\0';
}
-Pl_ASCIIHexDecoder::~Pl_ASCIIHexDecoder()
-{
-}
-
void
Pl_ASCIIHexDecoder::write(unsigned char* buf, size_t len)
{
diff --git a/libqpdf/Pl_Buffer.cc b/libqpdf/Pl_Buffer.cc
index a65a97f5..b47124d3 100644
--- a/libqpdf/Pl_Buffer.cc
+++ b/libqpdf/Pl_Buffer.cc
@@ -12,10 +12,6 @@ Pl_Buffer::Members::Members() :
{
}
-Pl_Buffer::Members::~Members()
-{
-}
-
Pl_Buffer::Pl_Buffer(char const* identifier, Pipeline* next) :
Pipeline(identifier, next),
m(new Members())
@@ -24,6 +20,8 @@ Pl_Buffer::Pl_Buffer(char const* identifier, Pipeline* next) :
Pl_Buffer::~Pl_Buffer()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/Pl_Concatenate.cc b/libqpdf/Pl_Concatenate.cc
index 7b227b0e..dc746183 100644
--- a/libqpdf/Pl_Concatenate.cc
+++ b/libqpdf/Pl_Concatenate.cc
@@ -1,13 +1,5 @@
#include <qpdf/Pl_Concatenate.hh>
-Pl_Concatenate::Members::Members()
-{
-}
-
-Pl_Concatenate::Members::~Members()
-{
-}
-
Pl_Concatenate::Pl_Concatenate(char const* identifier, Pipeline* next) :
Pipeline(identifier, next)
{
@@ -15,6 +7,8 @@ Pl_Concatenate::Pl_Concatenate(char const* identifier, Pipeline* next) :
Pl_Concatenate::~Pl_Concatenate()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/Pl_Count.cc b/libqpdf/Pl_Count.cc
index 067f7cdb..fb135723 100644
--- a/libqpdf/Pl_Count.cc
+++ b/libqpdf/Pl_Count.cc
@@ -8,10 +8,6 @@ Pl_Count::Members::Members() :
{
}
-Pl_Count::Members::~Members()
-{
-}
-
Pl_Count::Pl_Count(char const* identifier, Pipeline* next) :
Pipeline(identifier, next),
m(new Members())
@@ -20,6 +16,8 @@ Pl_Count::Pl_Count(char const* identifier, Pipeline* next) :
Pl_Count::~Pl_Count()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/Pl_DCT.cc b/libqpdf/Pl_DCT.cc
index 974a6327..474acdd9 100644
--- a/libqpdf/Pl_DCT.cc
+++ b/libqpdf/Pl_DCT.cc
@@ -50,10 +50,6 @@ Pl_DCT::Members::Members(
{
}
-Pl_DCT::Members::~Members()
-{
-}
-
Pl_DCT::Pl_DCT(char const* identifier, Pipeline* next) :
Pipeline(identifier, next),
m(new Members(a_decompress, "DCT compressed image"))
@@ -82,6 +78,8 @@ Pl_DCT::Pl_DCT(
Pl_DCT::~Pl_DCT()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/Pl_Discard.cc b/libqpdf/Pl_Discard.cc
index f2ba561f..fc46c3c1 100644
--- a/libqpdf/Pl_Discard.cc
+++ b/libqpdf/Pl_Discard.cc
@@ -2,14 +2,6 @@
// Exercised in md5 test suite
-Pl_Discard::Members::Members()
-{
-}
-
-Pl_Discard::Members::~Members()
-{
-}
-
Pl_Discard::Pl_Discard() :
Pipeline("discard", 0)
{
@@ -17,6 +9,8 @@ Pl_Discard::Pl_Discard() :
Pl_Discard::~Pl_Discard()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/Pl_Flate.cc b/libqpdf/Pl_Flate.cc
index b8bdc185..05a3bbcf 100644
--- a/libqpdf/Pl_Flate.cc
+++ b/libqpdf/Pl_Flate.cc
@@ -65,6 +65,8 @@ Pl_Flate::Pl_Flate(
Pl_Flate::~Pl_Flate()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/Pl_LZWDecoder.cc b/libqpdf/Pl_LZWDecoder.cc
index 34ed1bd7..68caa5c9 100644
--- a/libqpdf/Pl_LZWDecoder.cc
+++ b/libqpdf/Pl_LZWDecoder.cc
@@ -22,10 +22,6 @@ Pl_LZWDecoder::Pl_LZWDecoder(
memset(buf, 0, 3);
}
-Pl_LZWDecoder::~Pl_LZWDecoder()
-{
-}
-
void
Pl_LZWDecoder::write(unsigned char* bytes, size_t len)
{
diff --git a/libqpdf/Pl_MD5.cc b/libqpdf/Pl_MD5.cc
index 95e0a8d6..a5e64139 100644
--- a/libqpdf/Pl_MD5.cc
+++ b/libqpdf/Pl_MD5.cc
@@ -10,10 +10,6 @@ Pl_MD5::Pl_MD5(char const* identifier, Pipeline* next) :
{
}
-Pl_MD5::~Pl_MD5()
-{
-}
-
void
Pl_MD5::write(unsigned char* buf, size_t len)
{
diff --git a/libqpdf/Pl_PNGFilter.cc b/libqpdf/Pl_PNGFilter.cc
index dea8db9f..d62aec56 100644
--- a/libqpdf/Pl_PNGFilter.cc
+++ b/libqpdf/Pl_PNGFilter.cc
@@ -61,10 +61,6 @@ Pl_PNGFilter::Pl_PNGFilter(
(action == a_encode ? this->bytes_per_row : this->bytes_per_row + 1);
}
-Pl_PNGFilter::~Pl_PNGFilter()
-{
-}
-
void
Pl_PNGFilter::write(unsigned char* data, size_t len)
{
diff --git a/libqpdf/Pl_QPDFTokenizer.cc b/libqpdf/Pl_QPDFTokenizer.cc
index dfca0b5d..97efb51b 100644
--- a/libqpdf/Pl_QPDFTokenizer.cc
+++ b/libqpdf/Pl_QPDFTokenizer.cc
@@ -12,10 +12,6 @@ Pl_QPDFTokenizer::Members::Members() :
{
}
-Pl_QPDFTokenizer::Members::~Members()
-{
-}
-
Pl_QPDFTokenizer::Pl_QPDFTokenizer(
char const* identifier,
QPDFObjectHandle::TokenFilter* filter,
@@ -32,6 +28,8 @@ Pl_QPDFTokenizer::Pl_QPDFTokenizer(
Pl_QPDFTokenizer::~Pl_QPDFTokenizer()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/Pl_RC4.cc b/libqpdf/Pl_RC4.cc
index b8d9645a..6f04ab62 100644
--- a/libqpdf/Pl_RC4.cc
+++ b/libqpdf/Pl_RC4.cc
@@ -15,10 +15,6 @@ Pl_RC4::Pl_RC4(
this->outbuf = QUtil::make_shared_array<unsigned char>(out_bufsize);
}
-Pl_RC4::~Pl_RC4()
-{
-}
-
void
Pl_RC4::write(unsigned char* data, size_t len)
{
diff --git a/libqpdf/Pl_RunLength.cc b/libqpdf/Pl_RunLength.cc
index b92e2756..86e4b684 100644
--- a/libqpdf/Pl_RunLength.cc
+++ b/libqpdf/Pl_RunLength.cc
@@ -10,10 +10,6 @@ Pl_RunLength::Members::Members(action_e action) :
{
}
-Pl_RunLength::Members::~Members()
-{
-}
-
Pl_RunLength::Pl_RunLength(
char const* identifier, Pipeline* next, action_e action) :
Pipeline(identifier, next),
@@ -23,6 +19,8 @@ Pl_RunLength::Pl_RunLength(
Pl_RunLength::~Pl_RunLength()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/Pl_SHA2.cc b/libqpdf/Pl_SHA2.cc
index 3113729f..a89cf218 100644
--- a/libqpdf/Pl_SHA2.cc
+++ b/libqpdf/Pl_SHA2.cc
@@ -14,10 +14,6 @@ Pl_SHA2::Pl_SHA2(int bits, Pipeline* next) :
}
}
-Pl_SHA2::~Pl_SHA2()
-{
-}
-
void
Pl_SHA2::write(unsigned char* buf, size_t len)
{
diff --git a/libqpdf/Pl_StdioFile.cc b/libqpdf/Pl_StdioFile.cc
index 4f30ae22..78b3114e 100644
--- a/libqpdf/Pl_StdioFile.cc
+++ b/libqpdf/Pl_StdioFile.cc
@@ -11,10 +11,6 @@ Pl_StdioFile::Members::Members(FILE* f) :
{
}
-Pl_StdioFile::Members::~Members()
-{
-}
-
Pl_StdioFile::Pl_StdioFile(char const* identifier, FILE* f) :
Pipeline(identifier, 0),
m(new Members(f))
@@ -23,6 +19,8 @@ Pl_StdioFile::Pl_StdioFile(char const* identifier, FILE* f) :
Pl_StdioFile::~Pl_StdioFile()
{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
}
void
diff --git a/libqpdf/Pl_TIFFPredictor.cc b/libqpdf/Pl_TIFFPredictor.cc
index 9230f895..fe788da7 100644
--- a/libqpdf/Pl_TIFFPredictor.cc
+++ b/libqpdf/Pl_TIFFPredictor.cc
@@ -45,10 +45,6 @@ Pl_TIFFPredictor::Pl_TIFFPredictor(
memset(this->cur_row.get(), 0, this->bytes_per_row);
}
-Pl_TIFFPredictor::~Pl_TIFFPredictor()
-{
-}
-
void
Pl_TIFFPredictor::write(unsigned char* data, size_t len)
{
diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc
index 6a571c8c..1864a1b4 100644
--- a/libqpdf/QPDF.cc
+++ b/libqpdf/QPDF.cc
@@ -230,10 +230,6 @@ QPDF::Members::Members() :
{
}
-QPDF::Members::~Members()
-{
-}
-
QPDF::QPDF() :
m(new Members())
{
diff --git a/libqpdf/QPDFAcroFormDocumentHelper.cc b/libqpdf/QPDFAcroFormDocumentHelper.cc
index 8a01f556..435cd4f6 100644
--- a/libqpdf/QPDFAcroFormDocumentHelper.cc
+++ b/libqpdf/QPDFAcroFormDocumentHelper.cc
@@ -6,10 +6,6 @@
#include <qpdf/QUtil.hh>
#include <qpdf/ResourceFinder.hh>
-QPDFAcroFormDocumentHelper::Members::~Members()
-{
-}
-
QPDFAcroFormDocumentHelper::Members::Members() :
cache_valid(false)
{
diff --git a/libqpdf/QPDFAnnotationObjectHelper.cc b/libqpdf/QPDFAnnotationObjectHelper.cc
index 37ef7502..f22207de 100644
--- a/libqpdf/QPDFAnnotationObjectHelper.cc
+++ b/libqpdf/QPDFAnnotationObjectHelper.cc
@@ -6,14 +6,6 @@
#include <qpdf/QTC.hh>
#include <qpdf/QUtil.hh>
-QPDFAnnotationObjectHelper::Members::~Members()
-{
-}
-
-QPDFAnnotationObjectHelper::Members::Members()
-{
-}
-
QPDFAnnotationObjectHelper::QPDFAnnotationObjectHelper(QPDFObjectHandle oh) :
QPDFObjectHelper(oh)
{
diff --git a/libqpdf/QPDFEFStreamObjectHelper.cc b/libqpdf/QPDFEFStreamObjectHelper.cc
index 6b3555bf..fe27a86e 100644
--- a/libqpdf/QPDFEFStreamObjectHelper.cc
+++ b/libqpdf/QPDFEFStreamObjectHelper.cc
@@ -12,10 +12,6 @@ QPDFEFStreamObjectHelper::QPDFEFStreamObjectHelper(QPDFObjectHandle oh) :
{
}
-QPDFEFStreamObjectHelper::Members::Members()
-{
-}
-
QPDFObjectHandle
QPDFEFStreamObjectHelper::getParam(std::string const& pkey)
{
diff --git a/libqpdf/QPDFEmbeddedFileDocumentHelper.cc b/libqpdf/QPDFEmbeddedFileDocumentHelper.cc
index 4e2bd3cd..826e0d87 100644
--- a/libqpdf/QPDFEmbeddedFileDocumentHelper.cc
+++ b/libqpdf/QPDFEmbeddedFileDocumentHelper.cc
@@ -47,10 +47,6 @@ QPDFEmbeddedFileDocumentHelper::QPDFEmbeddedFileDocumentHelper(QPDF& qpdf) :
}
}
-QPDFEmbeddedFileDocumentHelper::Members::Members()
-{
-}
-
bool
QPDFEmbeddedFileDocumentHelper::hasEmbeddedFiles() const
{
diff --git a/libqpdf/QPDFFileSpecObjectHelper.cc b/libqpdf/QPDFFileSpecObjectHelper.cc
index 7f7932e3..0c7653b6 100644
--- a/libqpdf/QPDFFileSpecObjectHelper.cc
+++ b/libqpdf/QPDFFileSpecObjectHelper.cc
@@ -19,10 +19,6 @@ QPDFFileSpecObjectHelper::QPDFFileSpecObjectHelper(QPDFObjectHandle oh) :
}
}
-QPDFFileSpecObjectHelper::Members::Members()
-{
-}
-
static std::vector<std::string> name_keys = {
"/UF", "/F", "/Unix", "/DOS", "/Mac"};
diff --git a/libqpdf/QPDFFormFieldObjectHelper.cc b/libqpdf/QPDFFormFieldObjectHelper.cc
index 917e9339..a0a3ce5e 100644
--- a/libqpdf/QPDFFormFieldObjectHelper.cc
+++ b/libqpdf/QPDFFormFieldObjectHelper.cc
@@ -8,14 +8,6 @@
#include <qpdf/QUtil.hh>
#include <stdlib.h>
-QPDFFormFieldObjectHelper::Members::~Members()
-{
-}
-
-QPDFFormFieldObjectHelper::Members::Members()
-{
-}
-
QPDFFormFieldObjectHelper::QPDFFormFieldObjectHelper(QPDFObjectHandle oh) :
QPDFObjectHelper(oh),
m(new Members())
@@ -525,9 +517,7 @@ class ValueSetter: public QPDFObjectHandle::TokenFilter
std::vector<std::string> const& opt,
double tf,
QPDFObjectHandle::Rectangle const& bbox);
- virtual ~ValueSetter()
- {
- }
+ virtual ~ValueSetter() = default;
virtual void handleToken(QPDFTokenizer::Token const&);
virtual void handleEOF();
void writeAppearance();
diff --git a/libqpdf/QPDFJob.cc b/libqpdf/QPDFJob.cc
index f714c5d2..b8d91b69 100644
--- a/libqpdf/QPDFJob.cc
+++ b/libqpdf/QPDFJob.cc
@@ -46,9 +46,7 @@ namespace
size_t oi_min_height,
size_t oi_min_area,
QPDFObjectHandle& image);
- virtual ~ImageOptimizer()
- {
- }
+ virtual ~ImageOptimizer() = default;
virtual void
provideStreamData(int objid, int generation, Pipeline* pipeline);
std::shared_ptr<Pipeline>
@@ -66,9 +64,7 @@ namespace
class DiscardContents: public QPDFObjectHandle::ParserCallbacks
{
public:
- virtual ~DiscardContents()
- {
- }
+ virtual ~DiscardContents() = default;
virtual void
handleObject(QPDFObjectHandle)
{
@@ -103,10 +99,7 @@ namespace
filename(filename)
{
}
- virtual ~ProgressReporter()
- {
- }
-
+ virtual ~ProgressReporter() = default;
virtual void reportProgress(int);
private:
diff --git a/libqpdf/QPDFNameTreeObjectHelper.cc b/libqpdf/QPDFNameTreeObjectHelper.cc
index 7ba7abab..19dac3e4 100644
--- a/libqpdf/QPDFNameTreeObjectHelper.cc
+++ b/libqpdf/QPDFNameTreeObjectHelper.cc
@@ -31,10 +31,6 @@ class NameTreeDetails: public NNTreeDetails
static NameTreeDetails name_tree_details;
-QPDFNameTreeObjectHelper::Members::~Members()
-{
-}
-
QPDFNameTreeObjectHelper::Members::Members(
QPDFObjectHandle& oh, QPDF* q, bool auto_repair) :
impl(std::make_shared<NNTreeImpl>(name_tree_details, q, oh, auto_repair))
@@ -54,10 +50,6 @@ QPDFNameTreeObjectHelper::QPDFNameTreeObjectHelper(QPDFObjectHandle oh) :
{
}
-QPDFNameTreeObjectHelper::~QPDFNameTreeObjectHelper()
-{
-}
-
QPDFNameTreeObjectHelper
QPDFNameTreeObjectHelper::newEmpty(QPDF& qpdf, bool auto_repair)
{
diff --git a/libqpdf/QPDFNumberTreeObjectHelper.cc b/libqpdf/QPDFNumberTreeObjectHelper.cc
index 81cc0348..22b7f903 100644
--- a/libqpdf/QPDFNumberTreeObjectHelper.cc
+++ b/libqpdf/QPDFNumberTreeObjectHelper.cc
@@ -32,10 +32,6 @@ class NumberTreeDetails: public NNTreeDetails
static NumberTreeDetails number_tree_details;
-QPDFNumberTreeObjectHelper::Members::~Members()
-{
-}
-
QPDFNumberTreeObjectHelper::Members::Members(
QPDFObjectHandle& oh, QPDF* q, bool auto_repair) :
impl(std::make_shared<NNTreeImpl>(number_tree_details, q, oh, auto_repair))
diff --git a/libqpdf/QPDFObjectHandle.cc b/libqpdf/QPDFObjectHandle.cc
index 59b4942d..d4d6ec96 100644
--- a/libqpdf/QPDFObjectHandle.cc
+++ b/libqpdf/QPDFObjectHandle.cc
@@ -41,6 +41,12 @@ QPDFObjectHandle::StreamDataProvider::StreamDataProvider(bool supports_retry) :
{
}
+QPDFObjectHandle::StreamDataProvider::~StreamDataProvider()
+{
+ // Must be explicit and not inline -- see QPDF_DLL_CLASS in
+ // README-maintainer
+}
+
void
QPDFObjectHandle::StreamDataProvider::provideStreamData(
int objid, int generation, Pipeline* pipeline)
@@ -77,9 +83,7 @@ class CoalesceProvider: public QPDFObjectHandle::StreamDataProvider
old_contents(old_contents)
{
}
- virtual ~CoalesceProvider()
- {
- }
+ virtual ~CoalesceProvider() = default;
virtual void
provideStreamData(int objid, int generation, Pipeline* pipeline);
diff --git a/libqpdf/QPDFOutlineDocumentHelper.cc b/libqpdf/QPDFOutlineDocumentHelper.cc
index 3f30ebe0..97189a23 100644
--- a/libqpdf/QPDFOutlineDocumentHelper.cc
+++ b/libqpdf/QPDFOutlineDocumentHelper.cc
@@ -2,14 +2,6 @@
#include <qpdf/QTC.hh>
-QPDFOutlineDocumentHelper::Members::~Members()
-{
-}
-
-QPDFOutlineDocumentHelper::Members::Members()
-{
-}
-
QPDFOutlineDocumentHelper::QPDFOutlineDocumentHelper(QPDF& qpdf) :
QPDFDocumentHelper(qpdf),
m(new Members())
@@ -36,10 +28,6 @@ QPDFOutlineDocumentHelper::QPDFOutlineDocumentHelper(QPDF& qpdf) :
}
}
-QPDFOutlineDocumentHelper::~QPDFOutlineDocumentHelper()
-{
-}
-
bool
QPDFOutlineDocumentHelper::hasOutlines()
{
diff --git a/libqpdf/QPDFOutlineObjectHelper.cc b/libqpdf/QPDFOutlineObjectHelper.cc
index 0c2a30b4..d30cd7e7 100644
--- a/libqpdf/QPDFOutlineObjectHelper.cc
+++ b/libqpdf/QPDFOutlineObjectHelper.cc
@@ -3,10 +3,6 @@
#include <qpdf/QPDFOutlineDocumentHelper.hh>
#include <qpdf/QTC.hh>
-QPDFOutlineObjectHelper::Members::~Members()
-{
-}
-
QPDFOutlineObjectHelper::Members::Members(QPDFOutlineDocumentHelper& dh) :
dh(dh)
{
diff --git a/libqpdf/QPDFPageDocumentHelper.cc b/libqpdf/QPDFPageDocumentHelper.cc
index ecfd3713..61eba8c3 100644
--- a/libqpdf/QPDFPageDocumentHelper.cc
+++ b/libqpdf/QPDFPageDocumentHelper.cc
@@ -4,14 +4,6 @@
#include <qpdf/QTC.hh>
#include <qpdf/QUtil.hh>
-QPDFPageDocumentHelper::Members::~Members()
-{
-}
-
-QPDFPageDocumentHelper::Members::Members()
-{
-}
-
QPDFPageDocumentHelper::QPDFPageDocumentHelper(QPDF& qpdf) :
QPDFDocumentHelper(qpdf)
{
diff --git a/libqpdf/QPDFPageLabelDocumentHelper.cc b/libqpdf/QPDFPageLabelDocumentHelper.cc
index 05f080f0..5b2d4358 100644
--- a/libqpdf/QPDFPageLabelDocumentHelper.cc
+++ b/libqpdf/QPDFPageLabelDocumentHelper.cc
@@ -2,14 +2,6 @@
#include <qpdf/QTC.hh>
-QPDFPageLabelDocumentHelper::Members::~Members()
-{
-}
-
-QPDFPageLabelDocumentHelper::Members::Members()
-{
-}
-
QPDFPageLabelDocumentHelper::QPDFPageLabelDocumentHelper(QPDF& qpdf) :
QPDFDocumentHelper(qpdf),
m(new Members())
diff --git a/libqpdf/QPDFPageObjectHelper.cc b/libqpdf/QPDFPageObjectHelper.cc
index 5ad67dea..c64916b2 100644
--- a/libqpdf/QPDFPageObjectHelper.cc
+++ b/libqpdf/QPDFPageObjectHelper.cc
@@ -18,9 +18,7 @@ class ContentProvider: public QPDFObjectHandle::StreamDataProvider
from_page(from_page)
{
}
- virtual ~ContentProvider()
- {
- }
+ virtual ~ContentProvider() = default;
virtual void
provideStreamData(int objid, int generation, Pipeline* pipeline);
@@ -45,9 +43,7 @@ class InlineImageTracker: public QPDFObjectHandle::TokenFilter
{
public:
InlineImageTracker(QPDF*, size_t min_size, QPDFObjectHandle resources);
- virtual ~InlineImageTracker()
- {
- }
+ virtual ~InlineImageTracker() = default;
virtual void handleToken(QPDFTokenizer::Token const&);
QPDFObjectHandle convertIIDict(QPDFObjectHandle odict);
@@ -230,14 +226,6 @@ InlineImageTracker::handleToken(QPDFTokenizer::Token const& token)
}
}
-QPDFPageObjectHelper::Members::~Members()
-{
-}
-
-QPDFPageObjectHelper::Members::Members()
-{
-}
-
QPDFPageObjectHelper::QPDFPageObjectHelper(QPDFObjectHandle oh) :
QPDFObjectHelper(oh)
{
diff --git a/libqpdf/QPDFSystemError.cc b/libqpdf/QPDFSystemError.cc
index d300a00b..8d129bad 100644
--- a/libqpdf/QPDFSystemError.cc
+++ b/libqpdf/QPDFSystemError.cc
@@ -11,10 +11,6 @@ QPDFSystemError::QPDFSystemError(
{
}
-QPDFSystemError::~QPDFSystemError() noexcept
-{
-}
-
std::string
QPDFSystemError::createWhat(std::string const& description, int system_errno)
{
diff --git a/libqpdf/QPDFTokenizer.cc b/libqpdf/QPDFTokenizer.cc
index 0486fbc9..972b3ab9 100644
--- a/libqpdf/QPDFTokenizer.cc
+++ b/libqpdf/QPDFTokenizer.cc
@@ -29,9 +29,7 @@ class QPDFWordTokenFinder: public InputSource::Finder
str(str)
{
}
- virtual ~QPDFWordTokenFinder()
- {
- }
+ virtual ~QPDFWordTokenFinder() = default;
virtual bool check();
private:
@@ -96,10 +94,6 @@ QPDFTokenizer::Members::reset()
last_char_was_cr = false;
}
-QPDFTokenizer::Members::~Members()
-{
-}
-
QPDFTokenizer::Token::Token(token_type_e type, std::string const& value) :
type(type),
value(value),
diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc
index ef7c33ed..9f3eacbe 100644
--- a/libqpdf/QPDFWriter.cc
+++ b/libqpdf/QPDFWriter.cc
@@ -100,10 +100,6 @@ QPDFWriter::QPDFWriter(
setOutputFile(description, file, close_file);
}
-QPDFWriter::~QPDFWriter()
-{
-}
-
void
QPDFWriter::setOutputFilename(char const* filename)
{
diff --git a/libqpdf/QPDF_Array.cc b/libqpdf/QPDF_Array.cc
index 1026e263..46cc4893 100644
--- a/libqpdf/QPDF_Array.cc
+++ b/libqpdf/QPDF_Array.cc
@@ -14,10 +14,6 @@ QPDF_Array::QPDF_Array(SparseOHArray const& items) :
{
}
-QPDF_Array::~QPDF_Array()
-{
-}
-
void
QPDF_Array::releaseResolved()
{
diff --git a/libqpdf/QPDF_Bool.cc b/libqpdf/QPDF_Bool.cc
index 63d44adb..e7cf7105 100644
--- a/libqpdf/QPDF_Bool.cc
+++ b/libqpdf/QPDF_Bool.cc
@@ -5,10 +5,6 @@ QPDF_Bool::QPDF_Bool(bool val) :
{
}
-QPDF_Bool::~QPDF_Bool()
-{
-}
-
std::string
QPDF_Bool::unparse()
{
diff --git a/libqpdf/QPDF_Dictionary.cc b/libqpdf/QPDF_Dictionary.cc
index 39708fe7..599f7224 100644
--- a/libqpdf/QPDF_Dictionary.cc
+++ b/libqpdf/QPDF_Dictionary.cc
@@ -9,10 +9,6 @@ QPDF_Dictionary::QPDF_Dictionary(
{
}
-QPDF_Dictionary::~QPDF_Dictionary()
-{
-}
-
void
QPDF_Dictionary::releaseResolved()
{
diff --git a/libqpdf/QPDF_InlineImage.cc b/libqpdf/QPDF_InlineImage.cc
index 9769630c..c9e65e63 100644
--- a/libqpdf/QPDF_InlineImage.cc
+++ b/libqpdf/QPDF_InlineImage.cc
@@ -7,10 +7,6 @@ QPDF_InlineImage::QPDF_InlineImage(std::string const& val) :
{
}
-QPDF_InlineImage::~QPDF_InlineImage()
-{
-}
-
std::string
QPDF_InlineImage::unparse()
{
diff --git a/libqpdf/QPDF_Integer.cc b/libqpdf/QPDF_Integer.cc
index d0356dad..9401b3f9 100644
--- a/libqpdf/QPDF_Integer.cc
+++ b/libqpdf/QPDF_Integer.cc
@@ -7,10 +7,6 @@ QPDF_Integer::QPDF_Integer(long long val) :
{
}
-QPDF_Integer::~QPDF_Integer()
-{
-}
-
std::string
QPDF_Integer::unparse()
{
diff --git a/libqpdf/QPDF_Name.cc b/libqpdf/QPDF_Name.cc
index 85ca3059..2e0dde97 100644
--- a/libqpdf/QPDF_Name.cc
+++ b/libqpdf/QPDF_Name.cc
@@ -9,10 +9,6 @@ QPDF_Name::QPDF_Name(std::string const& name) :
{
}
-QPDF_Name::~QPDF_Name()
-{
-}
-
std::string
QPDF_Name::normalizeName(std::string const& name)
{
diff --git a/libqpdf/QPDF_Null.cc b/libqpdf/QPDF_Null.cc
index e4193c6c..0baff460 100644
--- a/libqpdf/QPDF_Null.cc
+++ b/libqpdf/QPDF_Null.cc
@@ -1,9 +1,5 @@
#include <qpdf/QPDF_Null.hh>
-QPDF_Null::~QPDF_Null()
-{
-}
-
std::string
QPDF_Null::unparse()
{
diff --git a/libqpdf/QPDF_Operator.cc b/libqpdf/QPDF_Operator.cc
index b61d47b1..a8ccc970 100644
--- a/libqpdf/QPDF_Operator.cc
+++ b/libqpdf/QPDF_Operator.cc
@@ -7,10 +7,6 @@ QPDF_Operator::QPDF_Operator(std::string const& val) :
{
}
-QPDF_Operator::~QPDF_Operator()
-{
-}
-
std::string
QPDF_Operator::unparse()
{
diff --git a/libqpdf/QPDF_Real.cc b/libqpdf/QPDF_Real.cc
index 345f30b6..0af881eb 100644
--- a/libqpdf/QPDF_Real.cc
+++ b/libqpdf/QPDF_Real.cc
@@ -13,10 +13,6 @@ QPDF_Real::QPDF_Real(
{
}
-QPDF_Real::~QPDF_Real()
-{
-}
-
std::string
QPDF_Real::unparse()
{
diff --git a/libqpdf/QPDF_Reserved.cc b/libqpdf/QPDF_Reserved.cc
index 5a1fc7ad..94bc584f 100644
--- a/libqpdf/QPDF_Reserved.cc
+++ b/libqpdf/QPDF_Reserved.cc
@@ -2,10 +2,6 @@
#include <stdexcept>
-QPDF_Reserved::~QPDF_Reserved()
-{
-}
-
std::string
QPDF_Reserved::unparse()
{
diff --git a/libqpdf/QPDF_Stream.cc b/libqpdf/QPDF_Stream.cc
index 219f159a..fa64fb1f 100644
--- a/libqpdf/QPDF_Stream.cc
+++ b/libqpdf/QPDF_Stream.cc
@@ -99,10 +99,6 @@ QPDF_Stream::QPDF_Stream(
setStreamDescription();
}
-QPDF_Stream::~QPDF_Stream()
-{
-}
-
void
QPDF_Stream::registerStreamFilter(
std::string const& filter_name,
diff --git a/libqpdf/QPDF_String.cc b/libqpdf/QPDF_String.cc
index 7d7ee84d..89ddc498 100644
--- a/libqpdf/QPDF_String.cc
+++ b/libqpdf/QPDF_String.cc
@@ -26,10 +26,6 @@ QPDF_String::QPDF_String(std::string const& val) :
{
}
-QPDF_String::~QPDF_String()
-{
-}
-
QPDF_String*
QPDF_String::new_utf16(std::string const& utf8_val)
{
diff --git a/libqpdf/SecureRandomDataProvider.cc b/libqpdf/SecureRandomDataProvider.cc
index 17af08ba..f8a342bd 100644
--- a/libqpdf/SecureRandomDataProvider.cc
+++ b/libqpdf/SecureRandomDataProvider.cc
@@ -12,14 +12,6 @@
# endif
#endif
-SecureRandomDataProvider::SecureRandomDataProvider()
-{
-}
-
-SecureRandomDataProvider::~SecureRandomDataProvider()
-{
-}
-
#ifdef SKIP_OS_SECURE_RANDOM
void
diff --git a/libqpdf/qpdf-c.cc b/libqpdf/qpdf-c.cc
index 46c553eb..bca66d0a 100644
--- a/libqpdf/qpdf-c.cc
+++ b/libqpdf/qpdf-c.cc
@@ -24,7 +24,7 @@ struct _qpdf_error
struct _qpdf_data
{
_qpdf_data();
- ~_qpdf_data();
+ ~_qpdf_data() = default;
std::shared_ptr<QPDF> qpdf;
std::shared_ptr<QPDFWriter> qpdf_writer;
@@ -60,10 +60,6 @@ _qpdf_data::_qpdf_data() :
{
}
-_qpdf_data::~_qpdf_data()
-{
-}
-
class ProgressReporter: public QPDFWriter::ProgressReporter
{
public:
diff --git a/libqpdf/qpdf/AES_PDF_native.hh b/libqpdf/qpdf/AES_PDF_native.hh
index 186ebbae..0b932038 100644
--- a/libqpdf/qpdf/AES_PDF_native.hh
+++ b/libqpdf/qpdf/AES_PDF_native.hh
@@ -15,7 +15,7 @@ class AES_PDF_native
size_t key_bytes,
bool cbc_mode,
unsigned char* cbc_block);
- ~AES_PDF_native();
+ ~AES_PDF_native() = default;
void update(unsigned char* in_data, unsigned char* out_data);
diff --git a/libqpdf/qpdf/ContentNormalizer.hh b/libqpdf/qpdf/ContentNormalizer.hh
index 4d976d27..ba1063e0 100644
--- a/libqpdf/qpdf/ContentNormalizer.hh
+++ b/libqpdf/qpdf/ContentNormalizer.hh
@@ -7,7 +7,7 @@ class ContentNormalizer: public QPDFObjectHandle::TokenFilter
{
public:
ContentNormalizer();
- virtual ~ContentNormalizer();
+ virtual ~ContentNormalizer() = default;
virtual void handleToken(QPDFTokenizer::Token const&);
bool anyBadTokens() const;
diff --git a/libqpdf/qpdf/CryptoRandomDataProvider.hh b/libqpdf/qpdf/CryptoRandomDataProvider.hh
index 006f27c2..89859e65 100644
--- a/libqpdf/qpdf/CryptoRandomDataProvider.hh
+++ b/libqpdf/qpdf/CryptoRandomDataProvider.hh
@@ -6,8 +6,8 @@
class CryptoRandomDataProvider: public RandomDataProvider
{
public:
- CryptoRandomDataProvider();
- virtual ~CryptoRandomDataProvider();
+ CryptoRandomDataProvider() = default;
+ virtual ~CryptoRandomDataProvider() = default;
virtual void provideRandomData(unsigned char* data, size_t len);
static RandomDataProvider* getInstance();
};
diff --git a/libqpdf/qpdf/InsecureRandomDataProvider.hh b/libqpdf/qpdf/InsecureRandomDataProvider.hh
index 5cdaabb2..47a81afe 100644
--- a/libqpdf/qpdf/InsecureRandomDataProvider.hh
+++ b/libqpdf/qpdf/InsecureRandomDataProvider.hh
@@ -7,7 +7,7 @@ class InsecureRandomDataProvider: public RandomDataProvider
{
public:
InsecureRandomDataProvider();
- virtual ~InsecureRandomDataProvider();
+ virtual ~InsecureRandomDataProvider() = default;
virtual void provideRandomData(unsigned char* data, size_t len);
static RandomDataProvider* getInstance();
diff --git a/libqpdf/qpdf/JSONHandler.hh b/libqpdf/qpdf/JSONHandler.hh
index 80f82175..9a53e028 100644
--- a/libqpdf/qpdf/JSONHandler.hh
+++ b/libqpdf/qpdf/JSONHandler.hh
@@ -104,7 +104,7 @@ class JSONHandler
~Members() = default;
private:
- Members();
+ Members() = default;
Members(Members const&) = delete;
Handlers h;
diff --git a/libqpdf/qpdf/OffsetInputSource.hh b/libqpdf/qpdf/OffsetInputSource.hh
index 4af25dbd..d8b08145 100644
--- a/libqpdf/qpdf/OffsetInputSource.hh
+++ b/libqpdf/qpdf/OffsetInputSource.hh
@@ -11,7 +11,7 @@ class OffsetInputSource: public InputSource
public:
OffsetInputSource(
std::shared_ptr<InputSource>, qpdf_offset_t global_offset);
- virtual ~OffsetInputSource();
+ virtual ~OffsetInputSource() = default;
virtual qpdf_offset_t findAndSkipNextEOL();
virtual std::string const& getName() const;
diff --git a/libqpdf/qpdf/Pl_AES_PDF.hh b/libqpdf/qpdf/Pl_AES_PDF.hh
index 6044902e..036842dd 100644
--- a/libqpdf/qpdf/Pl_AES_PDF.hh
+++ b/libqpdf/qpdf/Pl_AES_PDF.hh
@@ -18,7 +18,7 @@ class Pl_AES_PDF: public Pipeline
bool encrypt,
unsigned char const* key,
size_t key_bytes);
- virtual ~Pl_AES_PDF();
+ virtual ~Pl_AES_PDF() = default;
virtual void write(unsigned char* data, size_t len);
virtual void finish();
diff --git a/libqpdf/qpdf/Pl_ASCII85Decoder.hh b/libqpdf/qpdf/Pl_ASCII85Decoder.hh
index 966622ad..b359e16c 100644
--- a/libqpdf/qpdf/Pl_ASCII85Decoder.hh
+++ b/libqpdf/qpdf/Pl_ASCII85Decoder.hh
@@ -7,7 +7,7 @@ class Pl_ASCII85Decoder: public Pipeline
{
public:
Pl_ASCII85Decoder(char const* identifier, Pipeline* next);
- virtual ~Pl_ASCII85Decoder();
+ virtual ~Pl_ASCII85Decoder() = default;
virtual void write(unsigned char* buf, size_t len);
virtual void finish();
diff --git a/libqpdf/qpdf/Pl_ASCIIHexDecoder.hh b/libqpdf/qpdf/Pl_ASCIIHexDecoder.hh
index 2aa6a282..a385cce3 100644
--- a/libqpdf/qpdf/Pl_ASCIIHexDecoder.hh
+++ b/libqpdf/qpdf/Pl_ASCIIHexDecoder.hh
@@ -7,7 +7,7 @@ class Pl_ASCIIHexDecoder: public Pipeline
{
public:
Pl_ASCIIHexDecoder(char const* identifier, Pipeline* next);
- virtual ~Pl_ASCIIHexDecoder();
+ virtual ~Pl_ASCIIHexDecoder() = default;
virtual void write(unsigned char* buf, size_t len);
virtual void finish();
diff --git a/libqpdf/qpdf/Pl_LZWDecoder.hh b/libqpdf/qpdf/Pl_LZWDecoder.hh
index bc42220a..e157ee5b 100644
--- a/libqpdf/qpdf/Pl_LZWDecoder.hh
+++ b/libqpdf/qpdf/Pl_LZWDecoder.hh
@@ -11,7 +11,7 @@ class Pl_LZWDecoder: public Pipeline
public:
Pl_LZWDecoder(
char const* identifier, Pipeline* next, bool early_code_change);
- virtual ~Pl_LZWDecoder();
+ virtual ~Pl_LZWDecoder() = default;
virtual void write(unsigned char* buf, size_t len);
virtual void finish();
diff --git a/libqpdf/qpdf/Pl_MD5.hh b/libqpdf/qpdf/Pl_MD5.hh
index 18ce68c8..bbefba0e 100644
--- a/libqpdf/qpdf/Pl_MD5.hh
+++ b/libqpdf/qpdf/Pl_MD5.hh
@@ -16,7 +16,7 @@ class Pl_MD5: public Pipeline
{
public:
Pl_MD5(char const* identifier, Pipeline* next);
- virtual ~Pl_MD5();
+ virtual ~Pl_MD5() = default;
virtual void write(unsigned char*, size_t);
virtual void finish();
std::string getHexDigest();
diff --git a/libqpdf/qpdf/Pl_PNGFilter.hh b/libqpdf/qpdf/Pl_PNGFilter.hh
index ff4b6bd2..27986c55 100644
--- a/libqpdf/qpdf/Pl_PNGFilter.hh
+++ b/libqpdf/qpdf/Pl_PNGFilter.hh
@@ -22,7 +22,7 @@ class Pl_PNGFilter: public Pipeline
unsigned int columns,
unsigned int samples_per_pixel = 1,
unsigned int bits_per_sample = 8);
- virtual ~Pl_PNGFilter();
+ virtual ~Pl_PNGFilter() = default;
virtual void write(unsigned char* data, size_t len);
virtual void finish();
diff --git a/libqpdf/qpdf/Pl_RC4.hh b/libqpdf/qpdf/Pl_RC4.hh
index df5e1587..b5fc508d 100644
--- a/libqpdf/qpdf/Pl_RC4.hh
+++ b/libqpdf/qpdf/Pl_RC4.hh
@@ -17,7 +17,7 @@ class Pl_RC4: public Pipeline
unsigned char const* key_data,
int key_len = -1,
size_t out_bufsize = def_bufsize);
- virtual ~Pl_RC4();
+ virtual ~Pl_RC4() = default;
virtual void write(unsigned char* data, size_t len);
virtual void finish();
diff --git a/libqpdf/qpdf/Pl_SHA2.hh b/libqpdf/qpdf/Pl_SHA2.hh
index c857ff94..ba782bcf 100644
--- a/libqpdf/qpdf/Pl_SHA2.hh
+++ b/libqpdf/qpdf/Pl_SHA2.hh
@@ -21,7 +21,7 @@ class Pl_SHA2: public Pipeline
{
public:
Pl_SHA2(int bits = 0, Pipeline* next = 0);
- virtual ~Pl_SHA2();
+ virtual ~Pl_SHA2() = default;
virtual void write(unsigned char*, size_t);
virtual void finish();
void resetBits(int bits);
diff --git a/libqpdf/qpdf/Pl_TIFFPredictor.hh b/libqpdf/qpdf/Pl_TIFFPredictor.hh
index e0feda23..22c9322b 100644
--- a/libqpdf/qpdf/Pl_TIFFPredictor.hh
+++ b/libqpdf/qpdf/Pl_TIFFPredictor.hh
@@ -18,7 +18,7 @@ class Pl_TIFFPredictor: public Pipeline
unsigned int columns,
unsigned int samples_per_pixel = 1,
unsigned int bits_per_sample = 8);
- virtual ~Pl_TIFFPredictor();
+ virtual ~Pl_TIFFPredictor() = default;
virtual void write(unsigned char* data, size_t len);
virtual void finish();
diff --git a/libqpdf/qpdf/QPDF_Array.hh b/libqpdf/qpdf/QPDF_Array.hh
index 78e268fa..eb310b8e 100644
--- a/libqpdf/qpdf/QPDF_Array.hh
+++ b/libqpdf/qpdf/QPDF_Array.hh
@@ -12,7 +12,7 @@ class QPDF_Array: public QPDFObject
public:
QPDF_Array(std::vector<QPDFObjectHandle> const& items);
QPDF_Array(SparseOHArray const& items);
- virtual ~QPDF_Array();
+ virtual ~QPDF_Array() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_Bool.hh b/libqpdf/qpdf/QPDF_Bool.hh
index 5da6e87c..87f44251 100644
--- a/libqpdf/qpdf/QPDF_Bool.hh
+++ b/libqpdf/qpdf/QPDF_Bool.hh
@@ -7,7 +7,7 @@ class QPDF_Bool: public QPDFObject
{
public:
QPDF_Bool(bool val);
- virtual ~QPDF_Bool();
+ virtual ~QPDF_Bool() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_Dictionary.hh b/libqpdf/qpdf/QPDF_Dictionary.hh
index 4b8047df..8626d59b 100644
--- a/libqpdf/qpdf/QPDF_Dictionary.hh
+++ b/libqpdf/qpdf/QPDF_Dictionary.hh
@@ -12,7 +12,7 @@ class QPDF_Dictionary: public QPDFObject
{
public:
QPDF_Dictionary(std::map<std::string, QPDFObjectHandle> const& items);
- virtual ~QPDF_Dictionary();
+ virtual ~QPDF_Dictionary() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_InlineImage.hh b/libqpdf/qpdf/QPDF_InlineImage.hh
index bc544c39..ee79568b 100644
--- a/libqpdf/qpdf/QPDF_InlineImage.hh
+++ b/libqpdf/qpdf/QPDF_InlineImage.hh
@@ -7,7 +7,7 @@ class QPDF_InlineImage: public QPDFObject
{
public:
QPDF_InlineImage(std::string const& val);
- virtual ~QPDF_InlineImage();
+ virtual ~QPDF_InlineImage() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_Integer.hh b/libqpdf/qpdf/QPDF_Integer.hh
index 35e11a94..066629b6 100644
--- a/libqpdf/qpdf/QPDF_Integer.hh
+++ b/libqpdf/qpdf/QPDF_Integer.hh
@@ -7,7 +7,7 @@ class QPDF_Integer: public QPDFObject
{
public:
QPDF_Integer(long long val);
- virtual ~QPDF_Integer();
+ virtual ~QPDF_Integer() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_Name.hh b/libqpdf/qpdf/QPDF_Name.hh
index f87ca460..102cf4a3 100644
--- a/libqpdf/qpdf/QPDF_Name.hh
+++ b/libqpdf/qpdf/QPDF_Name.hh
@@ -7,7 +7,7 @@ class QPDF_Name: public QPDFObject
{
public:
QPDF_Name(std::string const& name);
- virtual ~QPDF_Name();
+ virtual ~QPDF_Name() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_Null.hh b/libqpdf/qpdf/QPDF_Null.hh
index 667c72f9..3ed6ddef 100644
--- a/libqpdf/qpdf/QPDF_Null.hh
+++ b/libqpdf/qpdf/QPDF_Null.hh
@@ -6,7 +6,7 @@
class QPDF_Null: public QPDFObject
{
public:
- virtual ~QPDF_Null();
+ virtual ~QPDF_Null() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_Operator.hh b/libqpdf/qpdf/QPDF_Operator.hh
index 4b3787a0..62a0e47b 100644
--- a/libqpdf/qpdf/QPDF_Operator.hh
+++ b/libqpdf/qpdf/QPDF_Operator.hh
@@ -7,7 +7,7 @@ class QPDF_Operator: public QPDFObject
{
public:
QPDF_Operator(std::string const& val);
- virtual ~QPDF_Operator();
+ virtual ~QPDF_Operator() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_Real.hh b/libqpdf/qpdf/QPDF_Real.hh
index 793990c0..f12d6b3a 100644
--- a/libqpdf/qpdf/QPDF_Real.hh
+++ b/libqpdf/qpdf/QPDF_Real.hh
@@ -8,7 +8,7 @@ class QPDF_Real: public QPDFObject
public:
QPDF_Real(std::string const& val);
QPDF_Real(double value, int decimal_places, bool trim_trailing_zeroes);
- virtual ~QPDF_Real();
+ virtual ~QPDF_Real() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_Reserved.hh b/libqpdf/qpdf/QPDF_Reserved.hh
index 71adbf3a..e085f2d3 100644
--- a/libqpdf/qpdf/QPDF_Reserved.hh
+++ b/libqpdf/qpdf/QPDF_Reserved.hh
@@ -6,7 +6,7 @@
class QPDF_Reserved: public QPDFObject
{
public:
- virtual ~QPDF_Reserved();
+ virtual ~QPDF_Reserved() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_Stream.hh b/libqpdf/qpdf/QPDF_Stream.hh
index 4dc92236..4df83d29 100644
--- a/libqpdf/qpdf/QPDF_Stream.hh
+++ b/libqpdf/qpdf/QPDF_Stream.hh
@@ -23,7 +23,7 @@ class QPDF_Stream: public QPDFObject
QPDFObjectHandle stream_dict,
qpdf_offset_t offset,
size_t length);
- virtual ~QPDF_Stream();
+ virtual ~QPDF_Stream() = default;
virtual std::string unparse();
virtual JSON getJSON();
virtual QPDFObject::object_type_e getTypeCode() const;
diff --git a/libqpdf/qpdf/QPDF_String.hh b/libqpdf/qpdf/QPDF_String.hh
index 1c7bb639..30be0c17 100644
--- a/libqpdf/qpdf/QPDF_String.hh
+++ b/libqpdf/qpdf/QPDF_String.hh
@@ -10,7 +10,7 @@ class QPDF_String: public QPDFObject
public:
QPDF_String(std::string const& val);
static QPDF_String* new_utf16(std::string const& utf8_val);
- virtual ~QPDF_String();
+ virtual ~QPDF_String() = default;
virtual std::string unparse();
virtual QPDFObject::object_type_e getTypeCode() const;
virtual char const* getTypeName() const;
diff --git a/libqpdf/qpdf/SecureRandomDataProvider.hh b/libqpdf/qpdf/SecureRandomDataProvider.hh
index c24eeddd..d701a905 100644
--- a/libqpdf/qpdf/SecureRandomDataProvider.hh
+++ b/libqpdf/qpdf/SecureRandomDataProvider.hh
@@ -6,8 +6,8 @@
class SecureRandomDataProvider: public RandomDataProvider
{
public:
- SecureRandomDataProvider();
- virtual ~SecureRandomDataProvider();
+ SecureRandomDataProvider() = default;
+ virtual ~SecureRandomDataProvider() = default;
virtual void provideRandomData(unsigned char* data, size_t len);
static RandomDataProvider* getInstance();
};
diff --git a/libtests/dct_compress.cc b/libtests/dct_compress.cc
index 446d4d0a..ad8710b1 100644
--- a/libtests/dct_compress.cc
+++ b/libtests/dct_compress.cc
@@ -22,9 +22,7 @@ class Callback: public Pl_DCT::CompressConfig
called(false)
{
}
- virtual ~Callback()
- {
- }
+ virtual ~Callback() = default;
virtual void apply(jpeg_compress_struct*);
bool called;
};
diff --git a/libtests/input_source.cc b/libtests/input_source.cc
index ad7270cc..1b85beda 100644
--- a/libtests/input_source.cc
+++ b/libtests/input_source.cc
@@ -24,9 +24,7 @@ class Finder: public InputSource::Finder
after(after)
{
}
- virtual ~Finder()
- {
- }
+ virtual ~Finder() = default;
virtual bool check();
private:
diff --git a/libtests/random.cc b/libtests/random.cc
index 2148111c..ad7d105d 100644
--- a/libtests/random.cc
+++ b/libtests/random.cc
@@ -7,12 +7,8 @@
class BogusRandomDataProvider: public RandomDataProvider
{
public:
- virtual ~BogusRandomDataProvider()
- {
- }
- BogusRandomDataProvider()
- {
- }
+ virtual ~BogusRandomDataProvider() = default;
+ BogusRandomDataProvider() = default;
virtual void
provideRandomData(unsigned char* data, size_t len)
{
diff --git a/qpdf/test_driver.cc b/qpdf/test_driver.cc
index 6e48bb35..bacaca74 100644
--- a/qpdf/test_driver.cc
+++ b/qpdf/test_driver.cc
@@ -55,9 +55,7 @@ class Provider: public QPDFObjectHandle::StreamDataProvider
bad_length(false)
{
}
- virtual ~Provider()
- {
- }
+ virtual ~Provider() = default;
virtual void
provideStreamData(int objid, int generation, Pipeline* p)
{
@@ -82,10 +80,7 @@ class Provider: public QPDFObjectHandle::StreamDataProvider
class ParserCallbacks: public QPDFObjectHandle::ParserCallbacks
{
public:
- virtual ~ParserCallbacks()
- {
- }
-
+ virtual ~ParserCallbacks() = default;
virtual void contentSize(size_t size);
virtual void handleObject(QPDFObjectHandle, size_t, size_t);
virtual void handleEOF();
@@ -125,12 +120,8 @@ ParserCallbacks::handleEOF()
class TokenFilter: public QPDFObjectHandle::TokenFilter
{
public:
- TokenFilter()
- {
- }
- virtual ~TokenFilter()
- {
- }
+ TokenFilter() = default;
+ virtual ~TokenFilter() = default;
virtual void
handleToken(QPDFTokenizer::Token const& t)
{
diff --git a/qpdf/test_large_file.cc b/qpdf/test_large_file.cc
index 24fc9e11..df442882 100644
--- a/qpdf/test_large_file.cc
+++ b/qpdf/test_large_file.cc
@@ -66,7 +66,7 @@ class ImageChecker: public Pipeline
{
public:
ImageChecker(size_t n);
- virtual ~ImageChecker();
+ virtual ~ImageChecker() = default;
virtual void write(unsigned char* data, size_t len);
virtual void finish();
@@ -84,10 +84,6 @@ ImageChecker::ImageChecker(size_t n) :
{
}
-ImageChecker::~ImageChecker()
-{
-}
-
void
ImageChecker::write(unsigned char* data, size_t len)
{
@@ -114,7 +110,7 @@ class ImageProvider: public QPDFObjectHandle::StreamDataProvider
{
public:
ImageProvider(size_t n);
- virtual ~ImageProvider();
+ virtual ~ImageProvider() = default;
virtual void
provideStreamData(int objid, int generation, Pipeline* pipeline);
@@ -127,10 +123,6 @@ ImageProvider::ImageProvider(size_t n) :
{
}
-ImageProvider::~ImageProvider()
-{
-}
-
void
ImageProvider::provideStreamData(int objid, int generation, Pipeline* pipeline)
{
diff --git a/qpdf/test_tokenizer.cc b/qpdf/test_tokenizer.cc
index 5b99888c..c3cda112 100644
--- a/qpdf/test_tokenizer.cc
+++ b/qpdf/test_tokenizer.cc
@@ -30,9 +30,7 @@ class Finder: public InputSource::Finder
str(str)
{
}
- virtual ~Finder()
- {
- }
+ virtual ~Finder() = default;
virtual bool check();
private: