2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-29 04:57:52 +00:00

[2371] move the definition of END_OF_STREAM from test to the main impl .cc.

based on review discussions.  it makes sense as we cannot assume its address
is never needed in non test applications.
This commit is contained in:
JINMEI Tatuya 2012-11-06 08:56:50 -08:00
parent f5c629c8fa
commit 430b6e2f07
3 changed files with 9 additions and 4 deletions

View File

@ -29,6 +29,10 @@ createStreamName(std::istream& input_stream) {
} // end of unnamed namespace
// Explicit definition of class static constant. The value is given in the
// declaration so it's not needed here.
const int InputSource::END_OF_STREAM;
InputSource::InputSource(std::istream& input_stream) :
at_eof_(false),
line_(1),

View File

@ -38,6 +38,11 @@ namespace master_lexer_internal {
class InputSource {
public:
/// \brief Returned by getChar() when end of stream is reached.
///
/// \note C++ allows a static const class member of an integral type to
/// be used without explicit definition as long as its address isn't
/// required. But, since this is a public member variable and we cannot
/// assume how it's used, we give a definition in the implementation.
static const int END_OF_STREAM = -1;
/// \brief Exception thrown when ungetChar() is made to go before

View File

@ -27,10 +27,6 @@ using namespace std;
using namespace isc::dns;
using namespace isc::dns::master_lexer_internal;
// Some compilers cannot find symbols of class constants when used in the
// EXPECT_xxx macros, so we need explicit declaration.
const int InputSource::END_OF_STREAM;
namespace {
class InputSourceTest : public ::testing::Test {