This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/30633] New: Weird uninit in Boost `add_edge'
- From: "Scott at coral8 dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 29 Jan 2007 21:15:03 -0000
- Subject: [Bug c++/30633] New: Weird uninit in Boost `add_edge'
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Ran across this while using the Boost graph package. Test program:
----------------------
#include <boost/graph/graph_traits.hpp>
#include <boost/graph/adjacency_list.hpp>
namespace boost {
enum vertex_subgraph_t { vertex_subgraph };
BOOST_INSTALL_PROPERTY(vertex, subgraph);
enum vertex_order_t { vertex_order };
BOOST_INSTALL_PROPERTY(vertex, order);
enum edge_back_t { edge_back };
BOOST_INSTALL_PROPERTY(edge, back);
};
typedef boost::property<boost::vertex_distance_t, int,
boost::property<boost::vertex_name_t, std::string,
boost::property<boost::vertex_subgraph_t, int,
boost::property<boost::vertex_order_t, int > > > > VertexProperty;
typedef boost::property<boost::edge_back_t, bool > EdgeProperties;
typedef boost::adjacency_list< boost::vecS, boost::vecS, boost::bidirectionalS,
VertexProperty, EdgeProperties > FlowLayoutGraph;
typedef boost::graph_traits< FlowLayoutGraph >::vertex_descriptor
vertex_descriptor;
void break_gcc(FlowLayoutGraph& m_graph, vertex_descriptor v1,
vertex_descriptor v2)
{
add_edge(v1, v2, m_graph);
}
--------------------------------
Obtain and unpack Boost 1.33.1. Compile the above with a command like:
g++ -c -I/path/to/boost_1_33_1 -O -Wuninitialized filename.cpp
You should see a message complaining that `p$m_value' is used uninitialized.
(This is, as you probably already realize, a name generated internally by g++;
there is no such variable in the source.)
--
Summary: Weird uninit in Boost `add_edge'
Product: gcc
Version: 4.1.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: Scott at coral8 dot com
GCC build triplet: x86_64-unknown-linux-gnu
GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30633