Summary: | security/botan2: Fails to build: Assertion failed: (!isa<CXXConstructorDecl>(D) && "Use other ctor with ctor decls!") on FreeBSD CURRENT (13) | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Keren Sky <keren_sky> | ||||||
Component: | Individual Port(s) | Assignee: | freebsd-ports-bugs (Nobody) <ports-bugs> | ||||||
Status: | Closed FIXED | ||||||||
Severity: | Affects Only Me | CC: | dim, tremere | ||||||
Priority: | --- | Keywords: | needs-qa | ||||||
Version: | Latest | Flags: | bugzilla:
maintainer-feedback?
(tremere) koobs: maintainer-feedback? (dim) |
||||||
Hardware: | amd64 | ||||||||
OS: | Any | ||||||||
Attachments: |
|
Description
Keren Sky
2020-04-11 23:24:43 UTC
Created attachment 213311 [details]
this cpp file was listed in the error msg for attaching to the bug report
@Dim Are the produced artifacts indicative of and sufficient for a toolchain / Clang failure? (In reply to Kubilay Kocak from comment #2) Yep, I can reproduce. I'm going to reduce the test case. The bug was already reported upstream here: https://bugs.llvm.org/show_bug.cgi?id=44919 which was a duplicate of: https://bugs.llvm.org/show_bug.cgi?id=45468 and fixed in: https://github.com/llvm/llvm-project/commit/30588a739584bb8ac41715d68656d22bd85198e7 I'll import the upstream fix. A commit references this bug: Author: dim Date: Sun Apr 12 16:07:00 UTC 2020 New revision: 359826 URL: https://svnweb.freebsd.org/changeset/base/359826 Log: Merge commit 30588a739 from llvm git (by Erich Keane): Make target features check work with ctor and dtor- The problem was reported in PR45468, applying target features to an always_inline constructor/destructor runs afoul of GlobalDecl construction assert when checking for target-feature compatibility. The core problem is fixed by using the version of the check that takes a FunctionDecl rather than the GlobalDecl. However, while writing the test, I discovered that source locations weren't properly set for this check on ctors/dtors. This patch also fixes constructors and CALLED destructors. Unfortunately, it doesn't seem too possible to get a meaningful source location for a 'cleanup' destructor, so those are still 'frontend' level errors unfortunately. A fixme was added to the test to cover that situation. This should fix 'Assertion failed: (!isa<CXXConstructorDecl>(D) && "Use other ctor with ctor decls!"), function Init, file /usr/src/contrib/llvm-project/clang/include/clang/AST/GlobalDecl.h, line 45' when compiling the security/botan2 port. PR: 245550 MFC after: 6 weeks X-MFC-With: 358851 Changes: head/contrib/llvm-project/clang/lib/CodeGen/CGClass.cpp head/contrib/llvm-project/clang/lib/CodeGen/CGExprCXX.cpp head/contrib/llvm-project/clang/lib/CodeGen/CodeGenFunction.cpp |