Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 854357

Summary: app-doc/doxygen-1.9.4 fails to compile (lto): code.cpp:13342:8: error: type struct yyguts_t violates the C++ One Definition Rule [-Werror=odr]
Product: Gentoo Linux Reporter: Agostino Sarubbo <ago>
Component: Current packagesAssignee: Matthias Maier <tamiko>
Status: RESOLVED FIXED    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/doxygen/doxygen/issues/9287
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 618550    
Attachments: build.log

Description Agostino Sarubbo gentoo-dev 2022-06-26 07:03:16 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: app-doc/doxygen-1.9.4 fails to compile (lto).
Discovered on: amd64 (internal ref: lto_tinderbox)

NOTE:
This machine uses lto with CFLAGS=-flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing
Comment 1 Agostino Sarubbo gentoo-dev 2022-06-26 07:03:19 UTC
Created attachment 787679 [details]
build.log

build log and emerge --info
Comment 2 Agostino Sarubbo gentoo-dev 2022-06-26 07:03:21 UTC
Error(s) that match a know pattern in addition to what has been reported in the summary:


FAILED: bin/doxygen 
/var/tmp/portage/app-doc/doxygen-1.9.4/work/doxygen-1.9.4_build/generated_src/code.cpp:13342:8: error: type ‘struct yyguts_t’ violates the C++ One Definition Rule [-Werror=odr]
Comment 3 Larry the Git Cow gentoo-dev 2022-07-17 15:27:54 UTC
The bug has been closed via the following commit(s):

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

commit c2a1e6b202c6f3f8144fda42ce90b7d521a76ace
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2022-07-17 15:27:42 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-07-17 15:27:42 +0000

    app-doc/doxygen: filter LTO (-Wodr)
    
    Closes: https://bugs.gentoo.org/854357
    Signed-off-by: Sam James <sam@gentoo.org>

 app-doc/doxygen/{doxygen-1.9.4.ebuild => doxygen-1.9.4-r1.ebuild} | 3 +++
 app-doc/doxygen/doxygen-9999.ebuild                               | 8 +++++---
 2 files changed, 8 insertions(+), 3 deletions(-)