Commit 2538d84413ac574f6f8bcb9dfcc84254a11fa75d

Authored by Jay Berkenbilt
1 parent 1b3f84f9

Explicitly deprecate old name/number tree constructors

Use C++14 [[deprecated]] tag
include/qpdf/QPDFNameTreeObjectHelper.hh
@@ -55,6 +55,7 @@ class QPDFNameTreeObjectHelper: public QPDFObjectHelper @@ -55,6 +55,7 @@ class QPDFNameTreeObjectHelper: public QPDFObjectHelper
55 // QPDFNameTreeObjectHelper constructed in this way can't be 55 // QPDFNameTreeObjectHelper constructed in this way can't be
56 // modified or repaired and will silently ignore problems in the 56 // modified or repaired and will silently ignore problems in the
57 // structure. 57 // structure.
  58 + [[deprecated]]
58 QPDF_DLL 59 QPDF_DLL
59 QPDFNameTreeObjectHelper(QPDFObjectHandle); 60 QPDFNameTreeObjectHelper(QPDFObjectHandle);
60 61
include/qpdf/QPDFNumberTreeObjectHelper.hh
@@ -52,6 +52,7 @@ class QPDFNumberTreeObjectHelper: public QPDFObjectHelper @@ -52,6 +52,7 @@ class QPDFNumberTreeObjectHelper: public QPDFObjectHelper
52 // QPDFNumberTreeObjectHelper constructed in this way can't be 52 // QPDFNumberTreeObjectHelper constructed in this way can't be
53 // modified or repaired and will silently ignore problems in the 53 // modified or repaired and will silently ignore problems in the
54 // structure. 54 // structure.
  55 + [[deprecated]]
55 QPDF_DLL 56 QPDF_DLL
56 QPDFNumberTreeObjectHelper(QPDFObjectHandle); 57 QPDFNumberTreeObjectHelper(QPDFObjectHandle);
57 58
qpdf/test_driver.cc
@@ -1856,8 +1856,18 @@ void runtest(int n, char const* filename1, char const* arg2) @@ -1856,8 +1856,18 @@ void runtest(int n, char const* filename1, char const* arg2)
1856 1856
1857 // Exercise deprecated API until qpdf 11 1857 // Exercise deprecated API until qpdf 11
1858 std::cout << "/Bad1: deprecated API" << std::endl; 1858 std::cout << "/Bad1: deprecated API" << std::endl;
  1859 +#ifdef _MSC_VER
  1860 +# pragma warning (disable: 4996)
  1861 +#endif
  1862 +#if (defined(__GNUC__) || defined(__clang__))
  1863 +# pragma GCC diagnostic push
  1864 +# pragma GCC diagnostic ignored "-Wdeprecated-declarations"
  1865 +#endif
1859 auto bad1 = QPDFNumberTreeObjectHelper( 1866 auto bad1 = QPDFNumberTreeObjectHelper(
1860 pdf.getTrailer().getKey("/Bad1")); 1867 pdf.getTrailer().getKey("/Bad1"));
  1868 +#if (defined(__GNUC__) || defined(__clang__))
  1869 +# pragma GCC diagnostic pop
  1870 +#endif
1861 assert(bad1.begin() == bad1.end()); 1871 assert(bad1.begin() == bad1.end());
1862 1872
1863 std::cout << "/Bad1" << std::endl; 1873 std::cout << "/Bad1" << std::endl;
@@ -2058,8 +2068,18 @@ void runtest(int n, char const* filename1, char const* arg2) @@ -2058,8 +2068,18 @@ void runtest(int n, char const* filename1, char const* arg2)
2058 2068
2059 // Exercise deprecated API until qpdf 11 2069 // Exercise deprecated API until qpdf 11
2060 std::cout << "/Bad1: deprecated API" << std::endl; 2070 std::cout << "/Bad1: deprecated API" << std::endl;
  2071 +#ifdef _MSC_VER
  2072 +# pragma warning (disable: 4996)
  2073 +#endif
  2074 +#if (defined(__GNUC__) || defined(__clang__))
  2075 +# pragma GCC diagnostic push
  2076 +# pragma GCC diagnostic ignored "-Wdeprecated-declarations"
  2077 +#endif
2061 auto bad1 = QPDFNameTreeObjectHelper( 2078 auto bad1 = QPDFNameTreeObjectHelper(
2062 pdf.getTrailer().getKey("/Bad1")); 2079 pdf.getTrailer().getKey("/Bad1"));
  2080 +#if (defined(__GNUC__) || defined(__clang__))
  2081 +# pragma GCC diagnostic pop
  2082 +#endif
2063 try 2083 try
2064 { 2084 {
2065 bad1.find("G", true); 2085 bad1.find("G", true);