On Mon, Dec 7, 2009 at 2:50 PM, SOFIA TAHSEEN <dnk...@motorola.com> wrote:
> Hi Antoine/Joel, > > When I try to build using the following make command I get the error as > below...Have you seen this earlier : > > make -r -j3 BUILDTYPE=Release chrome > (I have a dual core so used -j3) > > CXX(target) > out/Release/obj.target/common/chrome/common/histogram_synchronizer.o > CXX(target) > out/Release/obj.target/common/chrome/common/important_file_writer.o > CXX(target) > out/Release/obj.target/common/chrome/common/jstemplate_builder.o > CXX(target) out/Release/obj.target/common/chrome/common/libxml_utils.o > CXX(target) out/Release/obj.target/common/chrome/common/logging_chrome.o > cc1plus: warnings being treated as errors > chrome/common/libxml_utils.cc: In static member function 'static void > XmlReader::GenericErrorCallback(void*, const char*, ...)': > chrome/common/libxml_utils.cc:38: error: cannot pass objects of non-POD > type 'struct va_list' through '...'; call will abort at runtime > make: *** [out/Release/obj.target/common/chrome/common/libxml_utils.o] > Error 1 > make: *** Waiting for unfinished jobs.... > > +chromium-dev Sofia, I haven't seen that error. Which compiler did you end up using ? However the code does look suspicious, passing va_list through "...": void XmlReader::GenericErrorCallback(void* context, const char* msg, ...) { va_list args; va_start(args, msg); XmlReader* reader = static_cast<XmlReader*>(context); reader->errors_.append(StringPrintf(msg, args)); } Chromium C++ experts: Is that supposed to be legal, or even portable ? It sounds like StringAppendV would be preferable here. Antoine -- Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev