$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Richard Smith (richard_at_[hidden])
Date: 2007-04-03 12:45:47
I've just found what I believe to be a new regression on the
boost RC_1_34_0 branch relative to the 1.33.1 release. The
example below is a simplified extract of some real world
where the behaviour of boost::none silently changes.
#include <string>
#include <iostream>
#include <boost/optional.hpp>
#include <boost/none.hpp>
namespace sql {
void literal( std::ostream& os, int i ) {
os << i;
}
void literal( std::ostream& os,
boost::optional<std::string> const& str )
{
// escaping removed for clarity
if (str) os << '"' << str.get() << '"';
else os << "NULL";
}
}
int main() {
sql::literal( std::cout, boost::none );
}
In 1.33.1, this prints out 'NULL' (which is what I would
naively expect); on 1.34, it prints '0'. In both cases
compiles cleanly in gcc 4.1.1.
Sorry if this is a known regression, but having just seen
the email saying RC_1_34_0 is down to zero regressions, I
thought a quick-heads up was in order.
Richard