[Bug 246488] gcc-built binary crashes in std::ios_base::Init::Init()
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Mon May 18 17:50:40 UTC 2020
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=246488
Dimitry Andric <dim at FreeBSD.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |dim at FreeBSD.org
--- Comment #4 from Dimitry Andric <dim at FreeBSD.org> ---
I tried with the following diff instead:
Index: Makefile
===================================================================
--- Makefile (revision 535286)
+++ Makefile (working copy)
@@ -13,7 +13,7 @@ LICENSE_NAME= NASA Open Source Agreement version 1
LICENSE_FILE= ${WRKSRC}/LICENSE
LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
-BROKEN= fails to link
+#BROKEN= fails to link
BROKEN_aarch64= fails to compile: invokes x86 asm
LIB_DEPENDS= libdrm.so:graphics/libdrm \
@@ -27,7 +27,7 @@ BUILD_DEPENDS= ${LOCALBASE}/lib/libopenNURBS.a:gra
${LOCALBASE}/include/glm/glm.hpp:math/glm \
${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs
-USES= compiler:c++11-lang cmake:noninja localbase\
+USES= compiler:gcc-c++11-lib compiler:openmp cmake:noninja localbase\
gl gnome jpeg xorg
USE_GITHUB= yes
GH_PROJECT= OpenVSP
@@ -57,7 +57,7 @@ USE_GNOME= libxml2
# See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=230888
.if ${OPSYS} == FreeBSD
.if (${OSVERSION} < 1200000 || ${OSVERSION} >=1300000)
-BROKEN= undefined reference to __atomic_load
+#BROKEN= undefined reference to __atomic_load
.endif
.endif
but it errors out pretty quickly with a gcc error:
[ 18%] Building CXX object
src/cldai/CMakeFiles/stepdai-static.dir/sdaiBinary.cc.o
In file included from /usr/include/c++/v1/__tree:15,
from /usr/include/c++/v1/map:479,
from
/wrkdirs/share/dim/ports/cad/openvsp/work/.build/Libraries-prefix/src/Libraries-build/STEPCODE-prefix/src/STEPCODE/src/clstepcore/sdaiApplication_instance.cc:13:
/usr/include/c++/v1/memory: In instantiation of 'constexpr
std::__1::__compressed_pair_elem<_Tp, _Idx,
_CanBeEmptyBase>::__compressed_pair_elem(_Up&&) [with _Up = long int;
<template-parameter-2-2> = void; _Tp = std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> >*; int _Idx = 0; bool
_CanBeEmptyBase = false]':
/usr/include/c++/v1/memory:2289:72: required from 'constexpr
std::__1::__compressed_pair<_T1, _T2>::__compressed_pair(_U1&&, _U2&&) [with
_U1 = long int; _U2 = std::__1::allocator<std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > >; _T1 =
std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >*; _T2 =
std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > >]'
/usr/include/c++/v1/vector:455:41: required from
'std::__1::__vector_base<_Tp,
_Allocator>::__vector_base(std::__1::__vector_base<_Tp,
_Allocator>::allocator_type&&) [with _Tp = std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> >; _Allocator =
std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > >; std::__1::__vector_base<_Tp,
_Allocator>::allocator_type = std::__1::allocator<std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > >]'
/usr/include/c++/v1/vector:1249:82: required from 'std::__1::vector<_Tp,
_Alloc>::vector(const std::__1::vector<_Tp, _Alloc>&) [with _Tp =
std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >; _Allocator =
std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > >]'
/wrkdirs/share/dim/ports/cad/openvsp/work/.build/Libraries-prefix/src/Libraries-build/STEPCODE-prefix/src/STEPCODE/src/clstepcore/dictSchema.h:66:16:
required from here
/usr/include/c++/v1/memory:2204:42: error: invalid conversion from 'long int'
to 'std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >*' [-fpermissive]
2204 | : __value_(_VSTD::forward<_Up>(__u))
| ^
| |
| long int
/usr/include/c++/v1/memory: In instantiation of 'constexpr
std::__1::__compressed_pair_elem<_Tp, _Idx,
_CanBeEmptyBase>::__compressed_pair_elem(_Up&&) [with _Up = long int;
<template-parameter-2-2> = void; _Tp =
recursiveEntDescripIterator::queue_pair**; int _Idx = 0; bool _CanBeEmptyBase =
false]':
/usr/include/c++/v1/memory:2289:72: required from 'constexpr
std::__1::__compressed_pair<_T1, _T2>::__compressed_pair(_U1&&, _U2&&) [with
_U1 = long int; _U2 =
std::__1::allocator<recursiveEntDescripIterator::queue_pair*>&; _T1 =
recursiveEntDescripIterator::queue_pair**; _T2 =
std::__1::allocator<recursiveEntDescripIterator::queue_pair*>&]'
/usr/include/c++/v1/__split_buffer:316:30: required from
'std::__1::__split_buffer<_Tp,
_Allocator>::__split_buffer(std::__1::__split_buffer<_Tp,
_Allocator>::size_type, std::__1::__split_buffer<_Tp, _Allocator>::size_type,
std::__1::__split_buffer<_Tp, _Allocator>::__alloc_rr&) [with _Tp =
recursiveEntDescripIterator::queue_pair*; _Allocator =
std::__1::allocator<recursiveEntDescripIterator::queue_pair*>&;
std::__1::__split_buffer<_Tp, _Allocator>::size_type = long unsigned int;
std::__1::__split_buffer<_Tp, _Allocator>::__alloc_rr =
std::__1::allocator<recursiveEntDescripIterator::queue_pair*>]'
/usr/include/c++/v1/deque:2596:13: required from 'void std::__1::deque<_Tp,
_Allocator>::__add_back_capacity() [with _Tp =
recursiveEntDescripIterator::queue_pair; _Allocator =
std::__1::allocator<recursiveEntDescripIterator::queue_pair>]'
/usr/include/c++/v1/deque:1928:9: required from 'void std::__1::deque<_Tp,
_Allocator>::push_back(const value_type&) [with _Tp =
recursiveEntDescripIterator::queue_pair; _Allocator =
std::__1::allocator<recursiveEntDescripIterator::queue_pair>;
std::__1::deque<_Tp, _Allocator>::value_type =
recursiveEntDescripIterator::queue_pair]'
/wrkdirs/share/dim/ports/cad/openvsp/work/.build/Libraries-prefix/src/Libraries-build/STEPCODE-prefix/src/STEPCODE/src/clstepcore/SubSuperIterators.h:30:34:
required from here
/usr/include/c++/v1/memory:2204:42: error: invalid conversion from 'long int'
to 'recursiveEntDescripIterator::queue_pair**' [-fpermissive]
[ 19%] Building CXX object src/clutils/CMakeFiles/steputils.dir/dirobj.cc.o
/wrkdirs/share/dim/ports/cad/openvsp/work/.build/Libraries-prefix/src/Libraries-build/STEPCODE-prefix/src/STEPCODE/src/clstepcore/sdaiApplication_instance.cc:
In function 'SDAI_Application_instance* ReadEntityRef(std::__1::istream&,
ErrorDescriptor*, const char*, InstMgrBase*, int)':
/wrkdirs/share/dim/ports/cad/openvsp/work/.build/Libraries-prefix/src/Libraries-build/STEPCODE-prefix/src/STEPCODE/src/clstepcore/sdaiApplication_instance.cc:680:33:
warning: this statement may fall through [-Wimplicit-fallthrough=]
680 | err->GreaterSeverity( SEVERITY_WARNING );
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/wrkdirs/share/dim/ports/cad/openvsp/work/.build/Libraries-prefix/src/Libraries-build/STEPCODE-prefix/src/STEPCODE/src/clstepcore/sdaiApplication_instance.cc:682:9:
note: here
682 | case '#': {
| ^~~~
As gcc's error messages are very hard to read, and clang does not produce these
particular errors, it will be interesting to debug :)
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-toolchain
mailing list