summaryrefslogtreecommitdiff
path: root/net-print/cups-filters/files/cups-filters-1.28.17-c++17.patch
blob: f8f63ccd47245209ec4c3b6cbd63211ca475124e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
https://bugs.gentoo.org/901243
(and https://bugs.gentoo.org/898076)
https://github.com/OpenPrinting/cups-filters/pull/505

From 104fba23b1c0c67c92777b3165c6dca99558a656 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 6 Feb 2023 18:13:52 -0800
Subject: [PATCH] use noexcept(false) instead of throw() from c++17 onwards

C++17 removed dynamic exception specifications [1]
they had been deprecated since C++11, replace
throw(whatever) with noexcept(false).

[1] https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html

Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- a/filter/pdftoraster.cxx
+++ b/filter/pdftoraster.cxx
@@ -2148,7 +2148,11 @@ int main(int argc, char *argv[]) {
 /* For compatibility with g++ >= 4.7 compilers _GLIBCXX_THROW
  *  should be used as a guard, otherwise use traditional definition */
 #ifndef _GLIBCXX_THROW
+#if __cplusplus < 201703L
 #define _GLIBCXX_THROW throw
+#else
+#define _GLIBCXX_THROW(x) noexcept(false)
+#endif
 #endif
 
 void * operator new(size_t size) _GLIBCXX_THROW (std::bad_alloc)