You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@avro.apache.org by th...@apache.org on 2011/10/12 17:58:17 UTC
svn commit: r1182454 - in /avro/trunk: ./ lang/c++/ lang/c++/api/
lang/c++/impl/ lang/c++/impl/parsing/ lang/c++/test/
Author: thiru
Date: Wed Oct 12 15:58:17 2011
New Revision: 1182454
URL: http://svn.apache.org/viewvc?rev=1182454&view=rev
Log:
AVRO-915. Large number of warnings in C++ buildsc
Modified:
avro/trunk/CHANGES.txt
avro/trunk/lang/c++/CMakeLists.txt
avro/trunk/lang/c++/api/Stream.hh
avro/trunk/lang/c++/impl/DataFile.cc
avro/trunk/lang/c++/impl/Generic.cc
avro/trunk/lang/c++/impl/Resolver.cc
avro/trunk/lang/c++/impl/avrogencpp.cc
avro/trunk/lang/c++/impl/parsing/JsonCodec.cc
avro/trunk/lang/c++/impl/parsing/ResolvingDecoder.cc
avro/trunk/lang/c++/impl/parsing/Symbol.hh
avro/trunk/lang/c++/test/CodecTests.cc
avro/trunk/lang/c++/test/SpecificTests.cc
avro/trunk/lang/c++/test/StreamTests.cc
Modified: avro/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/avro/trunk/CHANGES.txt?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/CHANGES.txt (original)
+++ avro/trunk/CHANGES.txt Wed Oct 12 15:58:17 2011
@@ -113,6 +113,8 @@ Avro 1.6.0 (unreleased)
AVRO-840. C++ generate nullable types for optional fields int the schema. (thiru)
+ AVRO-915. Large number of warnings in C++ builds. (thiru)
+
BUG FIXES
AVRO-824. Java: Fix usage message of BinaryFragmentToJsonTool.
Modified: avro/trunk/lang/c++/CMakeLists.txt
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/CMakeLists.txt?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/CMakeLists.txt (original)
+++ avro/trunk/lang/c++/CMakeLists.txt Wed Oct 12 15:58:17 2011
@@ -18,6 +18,8 @@
#
cmake_minimum_required (VERSION 2.6)
+set (CMAKE_LEGACY_CYGWIN_WIN32 0)
+
if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/VERSION.txt)
file(READ "${CMAKE_CURRENT_SOURCE_DIR}/VERSION.txt" AVRO_VERSION)
else (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/VERSION.txt)
@@ -34,6 +36,10 @@ set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${BU
project (Avro-cpp)
+if (CMAKE_COMPILER_IS_GNUCXX)
+ set(CMAKE_CXX_FLAGS "-Wall")
+endif ()
+
find_package (Boost 1.38 REQUIRED
COMPONENTS regex filesystem system program_options)
Modified: avro/trunk/lang/c++/api/Stream.hh
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/api/Stream.hh?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/api/Stream.hh (original)
+++ avro/trunk/lang/c++/api/Stream.hh Wed Oct 12 15:58:17 2011
@@ -170,7 +170,7 @@ struct StreamReader {
}
void skipBytes(size_t n) {
- if (n > (end_ - next_)) {
+ if (n > static_cast<size_t>(end_ - next_)) {
n -= end_ - next_;
next_ = end_;
in_->skip(n);
Modified: avro/trunk/lang/c++/impl/DataFile.cc
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/impl/DataFile.cc?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/impl/DataFile.cc (original)
+++ avro/trunk/lang/c++/impl/DataFile.cc Wed Oct 12 15:58:17 2011
@@ -131,7 +131,7 @@ DataFileSync DataFileWriterBase::makeSyn
}
typedef array<uint8_t, 4> Magic;
-static Magic magic = { 'O', 'b', 'j', '\x01' };
+static Magic magic = { { 'O', 'b', 'j', '\x01' } };
void DataFileWriterBase::writeHeader()
{
Modified: avro/trunk/lang/c++/impl/Generic.cc
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/impl/Generic.cc?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/impl/Generic.cc (original)
+++ avro/trunk/lang/c++/impl/Generic.cc Wed Oct 12 15:58:17 2011
@@ -286,20 +286,12 @@ static void assertType(const GenericDatu
case AVRO_ENUM:
assertSameType<GenericEnum>(datum, n);
return;
- case AVRO_NULL:
- case AVRO_BOOL:
- case AVRO_INT:
- case AVRO_LONG:
- case AVRO_FLOAT:
- case AVRO_DOUBLE:
- case AVRO_STRING:
- case AVRO_BYTES:
- case AVRO_ARRAY:
- case AVRO_MAP:
+ default:
return;
}
+ } else {
+ typeMismatch(datum.type(), n->type());
}
- typeMismatch(datum.type(), n->type());
}
GenericWriter::GenericWriter(const ValidSchema& s, const EncoderPtr& encoder) :
Modified: avro/trunk/lang/c++/impl/Resolver.cc
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/impl/Resolver.cc?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/impl/Resolver.cc (original)
+++ avro/trunk/lang/c++/impl/Resolver.cc Wed Oct 12 15:58:17 2011
@@ -555,7 +555,7 @@ class ResolverFactory : private boost::n
Resolver*
constructPrimitive(const NodePtr &writer, const NodePtr &reader, const Layout &offset)
{
- Resolver *instruction;
+ Resolver *instruction = 0;
SchemaResolution match = writer->resolve(*reader);
@@ -839,8 +839,10 @@ NonUnionToUnionParser::NonUnionToUnionPa
choiceOffset_(offsets.at(0).offset()),
setFuncOffset_(offsets.at(1).offset())
{
-
- SchemaResolution bestMatch = checkUnionMatch(writer, reader, choice_);
+#ifndef NDEBUG
+ SchemaResolution bestMatch =
+#endif
+ checkUnionMatch(writer, reader, choice_);
assert(bestMatch != RESOLVE_NO_MATCH);
resolver_.reset(factory.construct(writer, reader->leafAt(choice_), offsets.at(choice_+2)));
}
Modified: avro/trunk/lang/c++/impl/avrogencpp.cc
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/impl/avrogencpp.cc?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/impl/avrogencpp.cc (original)
+++ avro/trunk/lang/c++/impl/avrogencpp.cc Wed Oct 12 15:58:17 2011
@@ -73,8 +73,8 @@ class CodeGen {
std::ostream& os_;
bool inNamespace_;
const std::string ns_;
- const std::string headerFile_;
const std::string schemaFile_;
+ const std::string headerFile_;
const std::string includePrefix_;
const bool noUnion_;
boost::mt19937 random_;
@@ -120,7 +120,7 @@ string CodeGen::generateEnumType(const N
{
os_ << "enum " << n->name() << " {\n";
size_t c = n->names();
- for (int i = 0; i < c; ++i) {
+ for (size_t i = 0; i < c; ++i) {
os_ << " " << n->nameAt(i) << ",\n";
}
os_ << "};\n\n";
@@ -199,7 +199,7 @@ string CodeGen::generateRecordType(const
{
size_t c = n->leaves();
vector<string> types;
- for (int i = 0; i < c; ++i) {
+ for (size_t i = 0; i < c; ++i) {
types.push_back(generateType(n->leafAt(i)));
}
@@ -210,14 +210,14 @@ string CodeGen::generateRecordType(const
os_ << "struct " << n->name() << " {\n";
if (! noUnion_) {
- for (int i = 0; i < c; ++i) {
+ for (size_t i = 0; i < c; ++i) {
if (n->leafAt(i)->type() == avro::AVRO_UNION) {
os_ << " typedef " << types[i]
<< ' ' << n->nameAt(i) << "_t;\n";
}
}
}
- for (int i = 0; i < c; ++i) {
+ for (size_t i = 0; i < c; ++i) {
if (! noUnion_ && n->leafAt(i)->type() == avro::AVRO_UNION) {
os_ << " " << n->nameAt(i) << "_t";
} else {
@@ -395,6 +395,8 @@ string CodeGen::doGenerateType(const Nod
return generateEnumType(n);
case avro::AVRO_UNION:
return generateUnionType(n);
+ default:
+ break;
}
return "$Undefuned$";
}
@@ -426,6 +428,8 @@ string CodeGen::generateDeclaration(cons
case avro::AVRO_UNION:
// FIXME: When can this happen?
return generateUnionType(nn);
+ default:
+ break;
}
return "$Undefuned$";
}
@@ -446,7 +450,7 @@ void CodeGen::generateEnumTraits(const N
void CodeGen::generateRecordTraits(const NodePtr& n)
{
size_t c = n->leaves();
- for (int i = 0; i < c; ++i) {
+ for (size_t i = 0; i < c; ++i) {
generateTraits(n->leafAt(i));
}
@@ -553,6 +557,8 @@ void CodeGen::generateTraits(const NodeP
break;
case avro::AVRO_FIXED:
break;
+ default:
+ break;
}
}
Modified: avro/trunk/lang/c++/impl/parsing/JsonCodec.cc
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/impl/parsing/JsonCodec.cc?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/impl/parsing/JsonCodec.cc (original)
+++ avro/trunk/lang/c++/impl/parsing/JsonCodec.cc Wed Oct 12 15:58:17 2011
@@ -114,7 +114,7 @@ Production JsonGrammarGenerator::doGener
vector<string> nn;
size_t c = n->names();
nn.reserve(c);
- for (int i = 0; i < c; ++i) {
+ for (size_t i = 0; i < c; ++i) {
nn.push_back(n->nameAt(i));
}
Symbol r[] = {
@@ -543,7 +543,7 @@ JsonParser::Token JsonParser::tryLiteral
{
char c[100];
in_.readBytes(reinterpret_cast<uint8_t*>(c), n);
- for (int i = 0; i < n; ++i) {
+ for (size_t i = 0; i < n; ++i) {
if (c[i] != exp[i]) {
unexpected(c[i]);
}
@@ -587,6 +587,8 @@ public:
throw Exception("Incorrect field");
}
break;
+ default:
+ break;
}
return 0;
}
@@ -1071,6 +1073,8 @@ public:
case Symbol::sField:
generator_.encodeString(s.extra<string>());
break;
+ default:
+ break;
}
return 0;
}
Modified: avro/trunk/lang/c++/impl/parsing/ResolvingDecoder.cc
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/impl/parsing/ResolvingDecoder.cc?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/impl/parsing/ResolvingDecoder.cc (original)
+++ avro/trunk/lang/c++/impl/parsing/ResolvingDecoder.cc Wed Oct 12 15:58:17 2011
@@ -138,6 +138,8 @@ int ResolvingGrammarGenerator::bestBranc
return j;
}
break;
+ default:
+ break;
}
}
return -1;
@@ -401,8 +403,9 @@ public:
switch (s.kind()) {
case Symbol::sWriterUnion:
return base_.decodeUnionIndex();
+ default:
+ return 0;
}
- return 0;
}
};
Modified: avro/trunk/lang/c++/impl/parsing/Symbol.hh
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/impl/parsing/Symbol.hh?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/impl/parsing/Symbol.hh (original)
+++ avro/trunk/lang/c++/impl/parsing/Symbol.hh Wed Oct 12 15:58:17 2011
@@ -319,6 +319,8 @@ void fixup(Symbol& s, const std::map<T,
case Symbol::sUnionAdjust:
fixup(s.extrap<std::pair<size_t, Production> >()->second, m);
break;
+ default:
+ break;
}
}
Modified: avro/trunk/lang/c++/test/CodecTests.cc
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/test/CodecTests.cc?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/test/CodecTests.cc (original)
+++ avro/trunk/lang/c++/test/CodecTests.cc Wed Oct 12 15:58:17 2011
@@ -341,6 +341,7 @@ static vector<string>::const_iterator sk
}
}
BOOST_FAIL("End reached while trying to skip");
+ throw 0; // Just to keep the compiler happy.
}
static void check(Decoder& d, unsigned int skipLevel,
Modified: avro/trunk/lang/c++/test/SpecificTests.cc
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/test/SpecificTests.cc?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/test/SpecificTests.cc (original)
+++ avro/trunk/lang/c++/test/SpecificTests.cc Wed Oct 12 15:58:17 2011
@@ -144,7 +144,7 @@ void testBytes()
void testFixed()
{
- array<uint8_t, 5> n = { 1, 7, 23, 47, 83 };
+ array<uint8_t, 5> n = { { 1, 7, 23, 47, 83 } };
array<uint8_t, 5> b = encodeAndDecode(n);
BOOST_CHECK_EQUAL_COLLECTIONS(b.begin(), b.end(), n.begin(), n.end());
}
Modified: avro/trunk/lang/c++/test/StreamTests.cc
URL: http://svn.apache.org/viewvc/avro/trunk/lang/c%2B%2B/test/StreamTests.cc?rev=1182454&r1=1182453&r2=1182454&view=diff
==============================================================================
--- avro/trunk/lang/c++/test/StreamTests.cc (original)
+++ avro/trunk/lang/c++/test/StreamTests.cc Wed Oct 12 15:58:17 2011
@@ -50,7 +50,7 @@ struct Fill1 {
void operator()(OutputStream& os, size_t len) {
StreamWriter w;
w.reset(os);
- for (int i = 0; i < len; ++i) {
+ for (size_t i = 0; i < len; ++i) {
w.write(i % 10 + '0');
}
w.flush();
@@ -59,7 +59,7 @@ struct Fill1 {
struct Fill2 {
void operator()(OutputStream& os, size_t len) {
- for (int i = 0; i < len;) {
+ for (size_t i = 0; i < len;) {
uint8_t *b;
size_t n;
os.next(&b, &n);
@@ -79,7 +79,7 @@ struct Verify1 {
void operator()(InputStream& is, size_t dataSize) {
StreamReader r;
r.reset(is);
- for (int i = 0; i < dataSize; ++i) {
+ for (size_t i = 0; i < dataSize; ++i) {
BOOST_CHECK_EQUAL(i % 10 + '0', r.read());
}
BOOST_CHECK_THROW(r.read(), Exception);
@@ -91,7 +91,7 @@ struct Verify2 {
const uint8_t *b;
size_t n;
- for (int i = 0; i < len;) {
+ for (size_t i = 0; i < len;) {
BOOST_REQUIRE(is.next(&b, &n));
size_t j = 0;
for (; i < len && j < n; ++j, ++i, ++b) {
@@ -122,7 +122,7 @@ void testNonEmpty_memoryStream(const Tes
void testNonEmpty2(const TestData& td) {
std::vector<uint8_t> v;
- for (int i = 0; i < td.dataSize; ++i) {
+ for (size_t i = 0; i < td.dataSize; ++i) {
v.push_back(i % 10 + '0');
}