Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 898076 - net-print/cups-filters-1.28.17 fails to compile (MUSL-CLANG-SYSTEM): QPDF.hh:1569:36: error: no type named string_view in namespace std
Summary: net-print/cups-filters-1.28.17 fails to compile (MUSL-CLANG-SYSTEM): QPDF.hh:...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Printing Team
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks:
 
Reported: 2023-02-27 09:14 UTC by Agostino Sarubbo
Modified: 2023-03-14 22:46 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,326.60 KB, text/plain)
2023-02-27 09:15 UTC, Agostino Sarubbo
Details
emerge --info output and build.log (file_898076.txt,192.30 KB, text/plain)
2023-03-12 03:17 UTC, Carlos
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2023-02-27 09:14:59 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: net-print/cups-filters-1.28.17 fails to compile (MUSL-CLANG-SYSTEM).
Discovered on: amd64 (internal ref: tinderbox_musl)

NOTE:
(MUSL-CLANG-SYSTEM) in the summary means that bug was found on a machine that runs MUSL libc + clang16 but this bug MAY or MAY NOT BE related to musl/clang16.
Comment 1 Agostino Sarubbo gentoo-dev 2023-02-27 09:15:02 UTC
Created attachment 854936 [details]
build.log

build log and emerge --info
Comment 2 Agostino Sarubbo gentoo-dev 2023-02-27 09:15:03 UTC
Error(s) that match a know pattern in addition to what has been reported in the summary:


filter/texttopdf.c:236:24: warning: passing arguments to 'write_pretty_header' without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
grep: /usr/share/liblouis/tables/*.ctb: No such file or directory
grep: /usr/share/liblouis/tables/*.utb: No such file or directory
	werror:          no
Comment 3 Markus 2023-03-08 18:20:20 UTC
Same as bug #898156?
Have you tried 1.28.17-r1?
Comment 4 Carlos 2023-03-12 03:16:42 UTC
The new ebuild now fails for me with this error message instead:

filter/pdftoraster.cxx:2154:34: error: ISO C++17 does not allow dynamic exception specifications [-Wdynamic-exception-spec]
void * operator new(size_t size) _GLIBCXX_THROW (std::bad_alloc)
                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
filter/pdftoraster.cxx:2151:24: note: expanded from macro '_GLIBCXX_THROW'
#define _GLIBCXX_THROW throw
                       ^
filter/pdftoraster.cxx:2154:34: note: use 'noexcept(false)' instead
void * operator new(size_t size) _GLIBCXX_THROW (std::bad_alloc)
                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                 noexcept(false)

It actually worked for me with std=c++11 (I guess it's due to me using LLVM's libcxx instead of GNU's libstdc++).
Comment 5 Carlos 2023-03-12 03:17:44 UTC
Created attachment 857353 [details]
emerge --info output and build.log
Comment 6 Scott Alfter 2023-03-13 17:17:26 UTC
(In reply to Markus from comment #3)
> Same as bug #898156?
> Have you tried 1.28.17-r1?

This ebuild worked for me, where 1.28.17 didn't.
Comment 7 psh0r 2023-03-14 21:19:26 UTC
*** Bug 901243 has been marked as a duplicate of this bug. ***
Comment 8 psh0r 2023-03-14 21:22:44 UTC
(In reply to Carlos from comment #4)
> The new ebuild now fails for me with this error message instead:
> 
> filter/pdftoraster.cxx:2154:34: error: ISO C++17 does not allow dynamic
> exception specifications [-Wdynamic-exception-spec]
> void * operator new(size_t size) _GLIBCXX_THROW (std::bad_alloc)
>                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> filter/pdftoraster.cxx:2151:24: note: expanded from macro '_GLIBCXX_THROW'
> #define _GLIBCXX_THROW throw
>                        ^
> filter/pdftoraster.cxx:2154:34: note: use 'noexcept(false)' instead
> void * operator new(size_t size) _GLIBCXX_THROW (std::bad_alloc)
>                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>                                  noexcept(false)
> 
> It actually worked for me with std=c++11 (I guess it's due to me using
> LLVM's libcxx instead of GNU's libstdc++).

Happens for me with 1.28.17-r1 on default/linux/amd64/17.1/clang profile.
See #901243
Comment 9 psh0r 2023-03-14 21:59:59 UTC
1.28.17 compiles just fine on default/linux/amd64/17.1/clang profile. Looks like the change of -std=c++11 to -std=c++17 is breaking the build for me.
Comment 10 Larry the Git Cow gentoo-dev 2023-03-14 22:46:41 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c79a0e06a7be1a76ec0368168cafdcf708b977b7

commit c79a0e06a7be1a76ec0368168cafdcf708b977b7
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-03-14 22:45:05 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-03-14 22:46:19 +0000

    net-print/cups-filters: fix build w/ C++17
    
    Closes: https://bugs.gentoo.org/898076
    Closes: https://bugs.gentoo.org/901243
    Signed-off-by: Sam James <sam@gentoo.org>

 .../cups-filters/cups-filters-1.28.17-r1.ebuild    |  4 +++
 .../files/cups-filters-1.28.17-c++17.patch         | 31 ++++++++++++++++++++++
 2 files changed, 35 insertions(+)