Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-4594

syntax error in bsonobjbuilder.h

    • Type: Icon: Bug Bug
    • Resolution: Won't Fix
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: 2.0.0, 2.0.1, 2.0.2
    • Component/s: None
    • None
    • Environment:
      Linux 3.1.6 on x86_64, gcc version 4.5.3 (Gentoo 4.5.3-r1 p1.0, pie-0.4.5), manual compilation with no system libraries
    • Linux

      The following error is triggered when compiling the MongoDB backend for PowerDNS:

      In file included from /usr/include/mongo/client/../util/../util/../db/jsobj.h:41:0,
                       from /usr/include/mongo/client/../util/../util/sock.h:25,
                       from /usr/include/mongo/client/../util/message.h:20,
                       from /usr/include/mongo/client/dbclient.h:24,
                       from mongodbbackend.hh:10,
                       from mongodbbackend.cc:18:
      /usr/include/mongo/client/../util/../util/../db/../bson/bsonobjbuilder.h: At global scope:
      /usr/include/mongo/client/../util/../util/../db/../bson/bsonobjbuilder.h:793:98: error: expected ',' or '...' before '&' token
      /usr/include/mongo/client/../util/../util/../db/../bson/bsonobjbuilder.h: In function 'mongo::BSONObjBuilder& mongo::_appendIt(mongo::BSONObjBuilder&, const mongo::StringData&, const mongo::theL (*)())':
      /usr/include/mongo/client/../util/../util/../db/../bson/bsonobjbuilder.h:796:23: error: expected nested-name-specifier before 'theL'
      /usr/include/mongo/client/../util/../util/../db/../bson/bsonobjbuilder.h:796:23: error: expected '(' before 'theL'
      /usr/include/mongo/client/../util/../util/../db/../bson/bsonobjbuilder.h:796:23: error: expected ';' before 'theL'
      /usr/include/mongo/client/../util/../util/../db/../bson/bsonobjbuilder.h:796:59: error: 'i' was not declared in this scope
      /usr/include/mongo/client/../util/../util/../db/../bson/bsonobjbuilder.h:796:64: error: 'vals' was not declared in this scope
      

      i've bisected the code between 1.9.0 and 2.0.0 and found the following bad commit:

      1cc69e30ad84a166ac1d48f68b20efa52c40fcc8 is the first bad commit
      commit 1cc69e30ad84a166ac1d48f68b20efa52c40fcc8
      Author: gregs <greg@10gen.com>
      Date:   Fri Jun 3 17:58:26 2011 -0400
      
          be smarter about the pids we look for when cleaning old locks.
      

      unfortunately my C++ skills are very weak and i've no idea what's going on

            Assignee:
            Unassigned Unassigned
            Reporter:
            hollow Benedikt Böhm
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: