Subject: [Boost-bugs] [Boost C++ Libraries] #2436: [spirit2] segfault upon grammar instantiation
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-10-25 23:55:04
#2436: [spirit2] segfault upon grammar instantiation
-----------------------------------------+----------------------------------
Reporter: vallentin_at_[hidden] | Owner: djowel
Type: Bugs | Status: new
Milestone: Boost 1.37.0 | Component: spirit
Version: Boost Development Trunk | Severity: Showstopper
Keywords: |
-----------------------------------------+----------------------------------
I recently switched from g++ 4.0 to g++ 4.2 and now get this warning. I am
using the 1.37 beta.
{{{
***/boost-1_37/boost/spirit/home/support/nonterminal/detail/nonterminal_fcall.hpp:53:
warning: missing braces around initializer for
'boost::spirit::parameterized_nonterminal<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > >, void ()(std::basic_string<char,
std::char_traits<char>, std::allocator<char> >),
vast::bro::bro_white_space<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char, std::char_traits<char>, std::allocator<char> > >
>, boost::fusion::unused_type>,
boost::fusion::vector<boost::phoenix::actor<boost::spirit::local_var<0> >,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_> >'
}}}
Later on, my application segfaults. Here is the stack trace:
{{{
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: 13 at address: 0x00000000
0x8fe18b42 in __dyld_misaligned_stack_error ()
(gdb) bt
#0 0x8fe18b42 in __dyld_misaligned_stack_error ()
#1 0xbfffdf98 in ?? ()
#2 0x036f2993 in std::_Rb_tree_insert_and_rebalance ()
#3 0x00109c5b in std::_Rb_tree<std::string, std::pair<std::string const,
boost::variant<vast::meta::vm_addr_t, vast::meta::vm_any_t,
vast::meta::vm_bool_t, vast::meta::vm_count_t, vast::meta::vm_double_t,
vast::meta::vm_interval_t, vast::meta::vm_int_t, vast::meta::vm_file_t,
vast::meta::vm_port_t, vast::meta::vm_string_t, vast::meta::vm_subnet_t,
vast::meta::vm_time_t, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_> >, std::_Select1st<std::pair<std::string
const, boost::variant<vast::meta::vm_addr_t, vast::meta::vm_any_t,
vast::meta::vm_bool_t, vast::meta::vm_count_t, vast::meta::vm_double_t,
vast::meta::vm_interval_t, vast::meta::vm_int_t, vast::meta::vm_file_t,
vast::meta::vm_port_t, vast::meta::vm_string_t, vast::meta::vm_subnet_t,
vast::meta::vm_time_t, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_> > >, std::less<std::string>,
std::allocator<std::pair<std::string const,
boost::variant<vast::meta::vm_addr_t, vast::meta::vm_any_t,
vast::meta::vm_bool_t, vast::meta::vm_count_t, vast::meta::vm_double_t,
vast::meta::vm_interval_t, vast::meta::vm_int_t, vast::meta::vm_file_t,
vast::meta::vm_port_t, vast::meta::vm_string_t, vast::meta::vm_subnet_t,
vast::meta::vm_time_t, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_> > > >::_M_insert (this=0xbfffdf34, __x=0x0,
__p=0x3802b30, __v=@0xbfffdf94) at
/Users/mavam/code/workspace/vast/build/root/include/boost-1_37/boost/spirit/home/qi/nonterminal/detail/rule.hpp:116
#4 0x00109e10 in std::_Rb_tree<std::string, std::pair<std::string const,
boost::variant<vast::meta::vm_addr_t, vast::meta::vm_any_t,
vast::meta::vm_bool_t, vast::meta::vm_count_t, vast::meta::vm_double_t,
vast::meta::vm_interval_t, vast::meta::vm_int_t, vast::meta::vm_file_t,
vast::meta::vm_port_t, vast::meta::vm_string_t, vast::meta::vm_subnet_t,
vast::meta::vm_time_t, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_> >, std::_Select1st<std::pair<std::string
const, boost::variant<vast::meta::vm_addr_t, vast::meta::vm_any_t,
vast::meta::vm_bool_t, vast::meta::vm_count_t, vast::meta::vm_double_t,
vast::meta::vm_interval_t, vast::meta::vm_int_t, vast::meta::vm_file_t,
vast::meta::vm_port_t, vast::meta::vm_string_t, vast::meta::vm_subnet_t,
vast::meta::vm_time_t, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_> > >, std::less<std::string>,
std::allocator<std::pair<std::string const,
boost::variant<vast::meta::vm_addr_t, vast::meta::vm_any_t,
vast::meta::vm_bool_t, vast::meta::vm_count_t, vast::meta::vm_double_t,
vast::meta::vm_interval_t, vast::meta::vm_int_t, vast::meta::vm_file_t,
vast::meta::vm_port_t, vast::meta::vm_string_t, vast::meta::vm_subnet_t,
vast::meta::vm_time_t, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_> > > >::_M_insert_unique (this=0xbfffdf34,
__v=@0xbfffdf94) at
/Users/mavam/code/workspace/vast/build/root/include/boost-1_37/boost/spirit/home/qi/nonterminal/detail/rule.hpp:116
#5 0x00109e88 in std::map<std::string,
boost::variant<vast::meta::vm_addr_t, vast::meta::vm_any_t,
vast::meta::vm_bool_t, vast::meta::vm_count_t, vast::meta::vm_double_t,
vast::meta::vm_interval_t, vast::meta::vm_int_t, vast::meta::vm_file_t,
vast::meta::vm_port_t, vast::meta::vm_string_t, vast::meta::vm_subnet_t,
vast::meta::vm_time_t, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_>, std::less<std::string>,
std::allocator<std::pair<std::string const,
boost::variant<vast::meta::vm_addr_t, vast::meta::vm_any_t,
vast::meta::vm_bool_t, vast::meta::vm_count_t, vast::meta::vm_double_t,
vast::meta::vm_interval_t, vast::meta::vm_int_t, vast::meta::vm_file_t,
vast::meta::vm_port_t, vast::meta::vm_string_t, vast::meta::vm_subnet_t,
vast::meta::vm_time_t, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_, boost::detail::variant::void_,
boost::detail::variant::void_> > > >::insert (this=0xbfffdf34,
__x=@0xbfffdf94) at
/Users/mavam/code/workspace/vast/build/root/include/boost-1_37/boost/spirit/home/qi/nonterminal/detail/rule.hpp:116
#6 0x0012633a in vast::meta::vast_basic_type::vast_basic_type
(this=<incomplete type>) at
/Users/mavam/code/workspace/vast/build/root/include/boost-1_37/boost/spirit/home/qi/nonterminal/detail/rule.hpp:116
#7 0x00126e75 in vast::meta::vast_type<__gnu_cxx::__normal_iterator<char
const*, std::string> >::vast_type (this=<incomplete type>,
sym_type=<incomplete type>) at
/Users/mavam/code/workspace/vast/build/root/include/boost-1_37/boost/spirit/home/qi/nonterminal/detail/rule.hpp:116
#8 0x0012849c in
vast::meta::vast_grammar<__gnu_cxx::__normal_iterator<char const*,
std::string> >::vast_grammar (this=0xbfffe73c, events=@0xbfffe928) at
/Users/mavam/code/workspace/vast/build/root/include/boost-1_37/boost/spirit/home/qi/nonterminal/detail/rule.hpp:116
#9 0x00145def in vast::meta::Specification::load (this=<incomplete type>,
filename=<incomplete type>) at
/opt/local/include/gcc42/c++/bits/stl_algobase.h:401
#10 0x0005d4eb in main (argc=<incomplete type>, argv=<incomplete type>) at
/Users/mavam/code/workspace/vast/build/root/include/boost-1_37/boost/thread/detail/thread.hpp:543
}}}
Let me know if you need more context from my application, I am not sure
where to start from here.
Best regards,
Matthias
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/2436> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:59 UTC