$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Matthias Schabel (boost_at_[hidden])
Date: 2006-11-06 13:31:27
While fine-tuning my units code, I've run into something that's
puzzling to me. Here's a minimal example: if I try to compile this
program:
#include <iostream>
namespace boost {
namespace units {
typedef int time;
typedef double length;
} // namespace units
} // namespace boost
int main(void)
{
using namespace boost::units;
length x = 10;
time t = 2;
return 0;
}
I get an error : "'time' not declared in this scope". However, if I
fully qualify the namespace for "time", it compiles fine:
#include <iostream>
namespace boost {
namespace units {
typedef int time;
typedef double length;
} // namespace units
} // namespace boost
int main(void)
{
using namespace boost::units;
length x = 10;
boost::units::time t = 2;
return 0;
}
This is on Xcode 2.4 (gcc 4.0.1). I assume that there is a definition
of "time" somewhere in the standard headers that is polluting the
global namespace. Has anyone run into this before? Any suggestions?
Matthias