]> git.saurik.com Git - apt.git/commitdiff
Merge branch 'debian/sid' into debian/experimental
authorMichael Vogt <mvo@debian.org>
Wed, 18 Jun 2014 06:32:47 +0000 (08:32 +0200)
committerMichael Vogt <mvo@debian.org>
Wed, 18 Jun 2014 06:32:47 +0000 (08:32 +0200)
Conflicts:
debian/changelog

12 files changed:
1  2 
apt-pkg/contrib/fileutl.cc
apt-pkg/deb/debsrcrecords.cc
apt-pkg/deb/dpkgpm.cc
apt-pkg/srcrecords.h
apt-private/private-install.cc
cmdline/apt-get.cc
debian/changelog
debian/libapt-pkg4.13.symbols
ftparchive/cachedb.cc
ftparchive/cachedb.h
ftparchive/writer.h
test/integration/framework

index 02b30dc1f17ce3abd401ddb731a91b7a71eadbcd,1ba4674e583194155be2477097188fff8775e19f..29450ada05adb2fe4d0f3a4734726d2fcba5dfd7
@@@ -656,22 -656,6 +656,22 @@@ string flCombine(string Dir,string File
     return Dir + '/' + File;
  }
                                                                        /*}}}*/
 +// flAbsPath - Return the absolute path of the filename                       /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +string flAbsPath(string File)
 +{
 +   char *p = realpath(File.c_str(), NULL);
 +   if (p == NULL)
 +   {
 +      _error->Errno("realpath", "flAbsPath failed");
 +      return "";
 +   }
 +   std::string AbsPath(p);
 +   free(p);
 +   return AbsPath;
 +}
 +                                                                      /*}}}*/
  // SetCloseExec - Set the close on exec flag                          /*{{{*/
  // ---------------------------------------------------------------------
  /* */
@@@ -852,27 -836,6 +852,27 @@@ bool ExecWait(pid_t Pid,const char *Nam
  }
                                                                        /*}}}*/
  
 +
 +// StartsWithGPGClearTextSignature - Check if a file is Pgp/GPG clearsigned     /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +bool StartsWithGPGClearTextSignature(string const &FileName)
 +{
 +   static const char* SIGMSG = "-----BEGIN PGP SIGNED MESSAGE-----\n";
 +   char buffer[strlen(SIGMSG)+1];
 +   FILE* gpg = fopen(FileName.c_str(), "r");
 +   if (gpg == NULL)
 +      return false;
 +
 +   char const * const test = fgets(buffer, sizeof(buffer), gpg);
 +   fclose(gpg);
 +   if (test == NULL || strcmp(buffer, SIGMSG) != 0)
 +      return false;
 +
 +   return true;
 +}
 +
 +
  class FileFdPrivate {                                                 /*{{{*/
        public:
  #ifdef HAVE_ZLIB
@@@ -1278,7 -1241,8 +1278,8 @@@ bool FileFd::OpenInternDescriptor(unsig
         if (d->lzma == NULL)
            d->lzma = new FileFdPrivate::LZMAFILE;
         d->lzma->file = (FILE*) compress_struct;
-        d->lzma->stream = LZMA_STREAM_INIT;
+          lzma_stream tmp_stream = LZMA_STREAM_INIT;
+        d->lzma->stream = tmp_stream;
  
         if ((Mode & ReadWrite) == ReadWrite)
            return FileFdError("ReadWrite mode is not supported for file %s", FileName.c_str());
@@@ -1834,7 -1798,8 +1835,8 @@@ static bool StatFileFd(char const * con
         // higher-level code will generate more meaningful messages,
         // even translated this would be meaningless for users
         return _error->Errno("fstat", "Unable to determine %s for fd %i", msg, iFd);
-       ispipe = S_ISFIFO(Buf.st_mode);
+       if (FileName.empty() == false)
+        ispipe = S_ISFIFO(Buf.st_mode);
     }
  
     // for compressor pipes st_size is undefined and at 'best' zero
@@@ -1948,6 -1913,7 +1950,6 @@@ bool FileFd::Close(
     {
        if ((Flags & Compressed) != Compressed && iFd > 0 && close(iFd) != 0)
         Res &= _error->Errno("close",_("Problem closing the file %s"), FileName.c_str());
 -
        if (d != NULL)
        {
         Res &= d->CloseDown(FileName);
@@@ -2074,31 -2040,6 +2076,31 @@@ std::string GetTempDir(
     return string(tmpdir);
  }
  
 +FileFd* GetTempFile(std::string const &Prefix, bool ImmediateUnlink)
 +{
 +   char fn[512];
 +   FileFd *Fd = new FileFd();
 +
 +   std::string tempdir = GetTempDir();
 +   snprintf(fn, sizeof(fn), "%s/%s.XXXXXX", 
 +            tempdir.c_str(), Prefix.c_str());
 +   int fd = mkstemp(fn);
 +   if(ImmediateUnlink)
 +      unlink(fn);
 +   if (fd < 0) 
 +   {
 +      _error->Errno("GetTempFile",_("Unable to mkstemp %s"), fn);
 +      return NULL;
 +   }
 +   if (!Fd->OpenDescriptor(fd, FileFd::WriteOnly, FileFd::None, true))
 +   {
 +      _error->Errno("GetTempFile",_("Unable to write to %s"),fn);
 +      return NULL;
 +   }
 +
 +   return Fd;
 +}
 +
  bool Rename(std::string From, std::string To)
  {
     if (rename(From.c_str(),To.c_str()) != 0)
     }   
     return true;
  }
 +
 +bool Popen(const char* Args[], FileFd &Fd, pid_t &Child, FileFd::OpenMode Mode)
 +{
 +   int fd;
 +   if (Mode != FileFd::ReadOnly && Mode != FileFd::WriteOnly)
 +      return _error->Error("Popen supports ReadOnly (x)or WriteOnly mode only");
 +
 +   int Pipe[2] = {-1, -1};
 +   if(pipe(Pipe) != 0)
 +   {
 +      return _error->Errno("pipe", _("Failed to create subprocess IPC"));
 +      return NULL;
 +   }
 +   std::set<int> keep_fds;
 +   keep_fds.insert(Pipe[0]);
 +   keep_fds.insert(Pipe[1]);
 +   Child = ExecFork(keep_fds);
 +   if(Child < 0)
 +      return _error->Errno("fork", "Failed to fork");
 +   if(Child == 0)
 +   {
 +      if(Mode == FileFd::ReadOnly)
 +      {
 +         close(Pipe[0]);
 +         fd = Pipe[1];
 +      }
 +      else if(Mode == FileFd::WriteOnly)
 +      {
 +         close(Pipe[1]);
 +         fd = Pipe[0];
 +      }
 +
 +      if(Mode == FileFd::ReadOnly)
 +      {
 +         dup2(fd, 1);
 +         dup2(fd, 2);
 +      } else if(Mode == FileFd::WriteOnly)
 +         dup2(fd, 0);
 +
 +      execv(Args[0], (char**)Args);
 +      _exit(100);
 +   }
 +   if(Mode == FileFd::ReadOnly)
 +   {
 +      close(Pipe[1]);
 +      fd = Pipe[0];
 +   } else if(Mode == FileFd::WriteOnly)
 +   {
 +      close(Pipe[0]);
 +      fd = Pipe[1];
 +   }
 +   Fd.OpenDescriptor(fd, Mode, FileFd::None, true);
 +
 +   return true;
 +}
index 76ba670c6f4d2ff481eb54d95e5356e5371eb9f5,a444cbe4d59038c86660efa94cc0d110e5bc644f..97f43aca2b54f8fda5210879a9dc6f4f2780824c
@@@ -18,8 -18,6 +18,8 @@@
  #include <apt-pkg/aptconfiguration.h>
  #include <apt-pkg/srcrecords.h>
  #include <apt-pkg/tagfile.h>
 +#include <apt-pkg/hashes.h>
 +#include <apt-pkg/gpgv.h>
  
  #include <ctype.h>
  #include <stdlib.h>
@@@ -57,13 -55,12 +57,13 @@@ const char **debSrcRecordParser::Binari
        char* binStartNext = strchrnul(bin, ',');
        char* binEnd = binStartNext - 1;
        for (; isspace(*binEnd) != 0; --binEnd)
 -       binEnd = '\0';
 +       binEnd = 0;
        StaticBinList.push_back(bin);
        if (*binStartNext != ',')
         break;
        *binStartNext = '\0';
 -      for (bin = binStartNext + 1; isspace(*bin) != 0; ++bin);
 +      for (bin = binStartNext + 1; isspace(*bin) != 0; ++bin)
 +         ;
     } while (*bin != '\0');
     StaticBinList.push_back(NULL);
  
@@@ -124,6 -121,10 +124,6 @@@ bool debSrcRecordParser::BuildDepends(s
  bool debSrcRecordParser::Files(std::vector<pkgSrcRecords::File> &List)
  {
     List.erase(List.begin(),List.end());
 -   
 -   string Files = Sect.FindS("Files");
 -   if (Files.empty() == true)
 -      return false;
  
     // Stash the / terminated directory prefix
     string Base = Sect.FindS("Directory");
  
     std::vector<std::string> const compExts = APT::Configuration::getCompressorExtensions();
  
 -   // Iterate over the entire list grabbing each triplet
 -   const char *C = Files.c_str();
 -   while (*C != 0)
 -   {   
 -      pkgSrcRecords::File F;
 -      string Size;
 -      
 -      // Parse each of the elements
 -      if (ParseQuoteWord(C,F.MD5Hash) == false ||
 -        ParseQuoteWord(C,Size) == false ||
 -        ParseQuoteWord(C,F.Path) == false)
 -       return _error->Error("Error parsing file record");
 -      
 -      // Parse the size and append the directory
 -      F.Size = atoi(Size.c_str());
 -      F.Path = Base + F.Path;
 -      
 -      // Try to guess what sort of file it is we are getting.
 -      string::size_type Pos = F.Path.length()-1;
 -      while (1)
 +   for (char const * const * type = HashString::SupportedHashes(); *type != NULL; ++type)
 +   {
 +      // derive field from checksum type
 +      std::string checksumField("Checksums-");
 +      if (strcmp(*type, "MD5Sum") == 0)
 +       checksumField = "Files"; // historic name for MD5 checksums
 +      else
 +       checksumField.append(*type);
 +
 +      string const Files = Sect.FindS(checksumField.c_str());
 +      if (Files.empty() == true)
 +       continue;
 +
 +      // Iterate over the entire list grabbing each triplet
 +      const char *C = Files.c_str();
 +      while (*C != 0)
        {
 -       string::size_type Tmp = F.Path.rfind('.',Pos);
 -       if (Tmp == string::npos)
 -          break;
 -       if (F.Type == "tar") {
 -          // source v3 has extension 'debian.tar.*' instead of 'diff.*'
 -          if (string(F.Path, Tmp+1, Pos-Tmp) == "debian")
 -             F.Type = "diff";
 -          break;
 -       }
 -       F.Type = string(F.Path,Tmp+1,Pos-Tmp);
 -       
 -       if (std::find(compExts.begin(), compExts.end(), std::string(".").append(F.Type)) != compExts.end() ||
 -           F.Type == "tar")
 +       string hash, size, path;
 +
 +       // Parse each of the elements
 +       if (ParseQuoteWord(C, hash) == false ||
 +             ParseQuoteWord(C, size) == false ||
 +             ParseQuoteWord(C, path) == false)
 +          return _error->Error("Error parsing file record in %s of source package %s", checksumField.c_str(), Package().c_str());
 +
 +       HashString const hashString(*type, hash);
 +       if (Base.empty() == false)
 +          path = Base + path;
 +
 +       // look if we have a record for this file already
 +       std::vector<pkgSrcRecords::File>::iterator file = List.begin();
 +       for (; file != List.end(); ++file)
 +          if (file->Path == path)
 +             break;
 +
 +       // we have it already, store the new hash and be done
 +       if (file != List.end())
         {
 -          Pos = Tmp-1;
 +#if __GNUC__ >= 4
 +      // set for compatibility only, so warn users not us
 +      #pragma GCC diagnostic push
 +      #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
 +#endif
 +          if (checksumField == "Files")
 +             file->MD5Hash = hash;
 +#if __GNUC__ >= 4
 +      #pragma GCC diagnostic pop
 +#endif
 +          // an error here indicates that we have two different hashes for the same file
 +          if (file->Hashes.push_back(hashString) == false)
 +             return _error->Error("Error parsing checksum in %s of source package %s", checksumField.c_str(), Package().c_str());
            continue;
         }
 -       
 -       break;
 +
 +       // we haven't seen this file yet
 +       pkgSrcRecords::File F;
 +       F.Path = path;
 +       F.Size = strtoull(size.c_str(), NULL, 10);
 +       F.Hashes.push_back(hashString);
 +
 +#if __GNUC__ >= 4
 +      // set for compatibility only, so warn users not us
 +      #pragma GCC diagnostic push
 +      #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
 +#endif
 +       if (checksumField == "Files")
 +          F.MD5Hash = hash;
 +#if __GNUC__ >= 4
 +      #pragma GCC diagnostic pop
 +#endif
 +
 +       // Try to guess what sort of file it is we are getting.
 +       string::size_type Pos = F.Path.length()-1;
 +       while (1)
 +       {
 +          string::size_type Tmp = F.Path.rfind('.',Pos);
 +          if (Tmp == string::npos)
 +             break;
 +          if (F.Type == "tar") {
 +             // source v3 has extension 'debian.tar.*' instead of 'diff.*'
 +             if (string(F.Path, Tmp+1, Pos-Tmp) == "debian")
 +                F.Type = "diff";
 +             break;
 +          }
 +          F.Type = string(F.Path,Tmp+1,Pos-Tmp);
 +
 +          if (std::find(compExts.begin(), compExts.end(), std::string(".").append(F.Type)) != compExts.end() ||
 +                F.Type == "tar")
 +          {
 +             Pos = Tmp-1;
 +             continue;
 +          }
 +
 +          break;
 +       }
 +       List.push_back(F);
        }
 -      
 -      List.push_back(F);
     }
 -   
 +
     return true;
  }
                                                                        /*}}}*/
  /* */
  debSrcRecordParser::~debSrcRecordParser()
  {
-    delete[] Buffer;
+    // was allocated via strndup()
+    free(Buffer);
  }
                                                                        /*}}}*/
 +
 +
 +debDscRecordParser::debDscRecordParser(std::string const &DscFile, pkgIndexFile const *Index)
 +   : debSrcRecordParser(DscFile, Index)
 +{
 +   // support clear signed files
 +   if (OpenMaybeClearSignedFile(DscFile, Fd) == false)
 +   {
 +      _error->Error("Failed to open %s", DscFile.c_str());
 +      return;
 +   }
 +
 +   // re-init to ensure the updated Fd is used
 +   Tags.Init(&Fd);
 +   // read the first (and only) record
 +   Step();
 +
 +}
diff --combined apt-pkg/deb/dpkgpm.cc
index 32ef343aa44a35d9e2c7f6b7fd98eac66697ae93,613a4de9fff75e2963d3d6618bc9859900e104c7..76b7083595992a98962604845d63459bdaff1ad3
@@@ -517,7 -517,7 +517,7 @@@ bool pkgDPkgPM::RunScriptsWithPkgs(cons
  void pkgDPkgPM::DoStdin(int master)
  {
     unsigned char input_buf[256] = {0,}; 
 -   ssize_t len = read(0, input_buf, sizeof(input_buf));
 +   ssize_t len = read(STDIN_FILENO, input_buf, sizeof(input_buf));
     if (len)
        FileFd::Write(master, input_buf, len);
     else
@@@ -1438,7 -1438,8 +1438,8 @@@ bool pkgDPkgPM::GoNoABIBreak(APT::Progr
  
         if (_config->FindB("DPkg::FlushSTDIN",true) == true && isatty(STDIN_FILENO))
         {
-           int Flags,dummy;
+           int Flags;
+             int dummy = 0;
            if ((Flags = fcntl(STDIN_FILENO,F_GETFL,dummy)) < 0)
               _exit(100);
            
diff --combined apt-pkg/srcrecords.h
index 69b3cfd9996c1e34182f2feff57ba172485152a6,e000e176ab08be193b3585d8869a8ac975bdcf69..c68d374bb4fb44a4e3992a02f1d19013a340043f
@@@ -14,7 -14,6 +14,7 @@@
  #define PKGLIB_SRCRECORDS_H
  
  #include <apt-pkg/macros.h>
 +#include <apt-pkg/hashes.h>
  
  #include <string>
  #include <vector>
@@@ -30,24 -29,15 +30,24 @@@ class pkgSrcRecord
  {
     public:
  
 +#if __GNUC__ >= 4
 +      // ensure that con- & de-structor don't trigger this warning
 +      #pragma GCC diagnostic push
 +      #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
 +#endif
     // Describes a single file
     struct File
     {
 -      std::string MD5Hash;
 -      unsigned long Size;
        std::string Path;
        std::string Type;
 +      unsigned long long Size;
 +      HashStringList Hashes;
 +      APT_DEPRECATED std::string MD5Hash;
     };
 -   
 +#if __GNUC__ >= 4
 +      #pragma GCC diagnostic pop
 +#endif
 +
     // Abstract parser for each source record
     class Parser
     {
     // Reset the search
     bool Restart();
  
-    // Locate a package by name
-    Parser *Find(const char *Package,bool const &SrcOnly = false);
+    // Step to the next SourcePackage and return pointer to the 
+    // next SourceRecord. The pointer is owned by libapt.
+    const Parser* Step();
+    // Locate a package by name and return pointer to the Parser.
+    // The pointer is owned by libapt.
+    Parser* Find(const char *Package,bool const &SrcOnly = false);
     
     pkgSrcRecords(pkgSourceList &List);
     virtual ~pkgSrcRecords();
index d9e4854620dc9d479bd8dedceb3bd746ef3c1248,a365d42941bb315bf4ce1c6be20b47b136edbba0..3b94237b4f15bdeaaf3c6875d8c564d5dcecfe52
@@@ -19,8 -19,6 +19,8 @@@
  #include <apt-pkg/macros.h>
  #include <apt-pkg/packagemanager.h>
  #include <apt-pkg/pkgcache.h>
 +#include <apt-pkg/sourcelist.h>
 +#include <apt-pkg/install-progress.h>
  
  #include <errno.h>
  #include <stdlib.h>
@@@ -31,7 -29,6 +31,7 @@@
  #include <iostream>
  #include <set>
  #include <vector>
 +#include <map>
  
  #include <apt-private/acqprogress.h>
  #include <apt-private/private-install.h>
@@@ -620,7 -617,8 +620,8 @@@ bool DoCacheManipulationFromCommandLine
        if (Fix != NULL)
        {
         // Call the scored problem resolver
-        Fix->Resolve(true);
+        if (Fix->Resolve(true) == false && Cache->BrokenCount() == 0)
+           return false;
        }
  
        // Now we check the state of the packages,
  bool DoInstall(CommandLine &CmdL)
  {
     CacheFile Cache;
 +   // first check for local pkgs and add them to the cache
 +   for (const char **I = CmdL.FileList; *I != 0; I++)
 +   {
 +      if(FileExists(*I))
 +      {
 +         // FIXME: make this more elegant
 +         std::string TypeStr = flExtension(*I) + "-file";
 +         pkgSourceList::Type *Type = pkgSourceList::Type::GetType(TypeStr.c_str());
 +         if(Type != 0)
 +         {
 +            std::vector<metaIndex *> List;
 +            std::map<std::string, std::string> Options;
 +            if(Type->CreateItem(List, *I, "", "", Options))
 +            {
 +               // we have our own CacheFile that gives us a SourceList
 +               // with superpowerz
 +               SourceList *sources = (SourceList*)Cache.GetSourceList();
 +               sources->AddMetaIndex(List[0]);
 +            }
 +         }
 +      }
 +   }
 +
 +   // then open the cache
     if (Cache.OpenForInstall() == false || 
         Cache.CheckDeps(CmdL.FileSize() != 1) == false)
        return false;
 -
 +   
     std::map<unsigned short, APT::VersionSet> verset;
  
     if(!DoCacheManipulationFromCommandLine(CmdL, Cache, verset))
     return InstallPackages(Cache,false);   
  }
                                                                        /*}}}*/
+ // TryToInstall - Mark a package for installation                     /*{{{*/
+ void TryToInstall::operator() (pkgCache::VerIterator const &Ver) {
+    pkgCache::PkgIterator Pkg = Ver.ParentPkg();
+    Cache->GetDepCache()->SetCandidateVersion(Ver);
+    pkgDepCache::StateCache &State = (*Cache)[Pkg];
+    // Handle the no-upgrade case
+    if (_config->FindB("APT::Get::upgrade",true) == false && Pkg->CurrentVer != 0)
+       ioprintf(c1out,_("Skipping %s, it is already installed and upgrade is not set.\n"),
+           Pkg.FullName(true).c_str());
+    // Ignore request for install if package would be new
+    else if (_config->FindB("APT::Get::Only-Upgrade", false) == true && Pkg->CurrentVer == 0)
+       ioprintf(c1out,_("Skipping %s, it is not installed and only upgrades are requested.\n"),
+           Pkg.FullName(true).c_str());
+    else {
+       if (Fix != NULL) {
+        Fix->Clear(Pkg);
+        Fix->Protect(Pkg);
+       }
+       Cache->GetDepCache()->MarkInstall(Pkg,false);
+       if (State.Install() == false) {
+        if (_config->FindB("APT::Get::ReInstall",false) == true) {
+           if (Pkg->CurrentVer == 0 || Pkg.CurrentVer().Downloadable() == false)
+              ioprintf(c1out,_("Reinstallation of %s is not possible, it cannot be downloaded.\n"),
+                    Pkg.FullName(true).c_str());
+           else
+              Cache->GetDepCache()->SetReInstall(Pkg, true);
+        } else
+           ioprintf(c1out,_("%s is already the newest version.\n"),
+                 Pkg.FullName(true).c_str());
+       }
+       // Install it with autoinstalling enabled (if we not respect the minial
+       // required deps or the policy)
+       if (FixBroken == false)
+        doAutoInstallLater.insert(Pkg);
+    }
+    // see if we need to fix the auto-mark flag
+    // e.g. apt-get install foo
+    // where foo is marked automatic
+    if (State.Install() == false &&
+        (State.Flags & pkgCache::Flag::Auto) &&
+        _config->FindB("APT::Get::ReInstall",false) == false &&
+        _config->FindB("APT::Get::Only-Upgrade",false) == false &&
+        _config->FindB("APT::Get::Download-Only",false) == false)
+    {
+       ioprintf(c1out,_("%s set to manually installed.\n"),
+           Pkg.FullName(true).c_str());
+       Cache->GetDepCache()->MarkAuto(Pkg,false);
+       AutoMarkChanged++;
+    }
+ }
+                                                                       /*}}}*/
+ bool TryToInstall::propergateReleaseCandiateSwitching(std::list<std::pair<pkgCache::VerIterator, std::string> > const &start, std::ostream &out)/*{{{*/
+ {
+    for (std::list<std::pair<pkgCache::VerIterator, std::string> >::const_iterator s = start.begin();
+        s != start.end(); ++s)
+       Cache->GetDepCache()->SetCandidateVersion(s->first);
+    bool Success = true;
+    // the Changed list contains:
+    //   first: "new version"
+    //   second: "what-caused the change"
+    std::list<std::pair<pkgCache::VerIterator, pkgCache::VerIterator> > Changed;
+    for (std::list<std::pair<pkgCache::VerIterator, std::string> >::const_iterator s = start.begin();
+        s != start.end(); ++s)
+    {
+       Changed.push_back(std::make_pair(s->first, pkgCache::VerIterator(*Cache)));
+       // We continue here even if it failed to enhance the ShowBroken output
+       Success &= Cache->GetDepCache()->SetCandidateRelease(s->first, s->second, Changed);
+    }
+    for (std::list<std::pair<pkgCache::VerIterator, pkgCache::VerIterator> >::const_iterator c = Changed.begin();
+        c != Changed.end(); ++c)
+    {
+       if (c->second.end() == true)
+        ioprintf(out, _("Selected version '%s' (%s) for '%s'\n"),
+              c->first.VerStr(), c->first.RelStr().c_str(), c->first.ParentPkg().FullName(true).c_str());
+       else if (c->first.ParentPkg()->Group != c->second.ParentPkg()->Group)
+       {
+        pkgCache::VerIterator V = (*Cache)[c->first.ParentPkg()].CandidateVerIter(*Cache);
+        ioprintf(out, _("Selected version '%s' (%s) for '%s' because of '%s'\n"), V.VerStr(),
+              V.RelStr().c_str(), V.ParentPkg().FullName(true).c_str(), c->second.ParentPkg().FullName(true).c_str());
+       }
+    }
+    return Success;
+ }
+                                                                       /*}}}*/
+ void TryToInstall::doAutoInstall() {                                  /*{{{*/
+    for (APT::PackageSet::const_iterator P = doAutoInstallLater.begin();
+        P != doAutoInstallLater.end(); ++P) {
+       pkgDepCache::StateCache &State = (*Cache)[P];
+       if (State.InstBroken() == false && State.InstPolicyBroken() == false)
+        continue;
+       Cache->GetDepCache()->MarkInstall(P, true);
+    }
+    doAutoInstallLater.clear();
+ }
+                                                                       /*}}}*/
+ // TryToRemove - Mark a package for removal                           /*{{{*/
+ void TryToRemove::operator() (pkgCache::VerIterator const &Ver)
+ {
+    pkgCache::PkgIterator Pkg = Ver.ParentPkg();
+    if (Fix != NULL)
+    {
+       Fix->Clear(Pkg);
+       Fix->Protect(Pkg);
+       Fix->Remove(Pkg);
+    }
+    if ((Pkg->CurrentVer == 0 && PurgePkgs == false) ||
+        (PurgePkgs == true && Pkg->CurrentState == pkgCache::State::NotInstalled))
+    {
+       pkgCache::GrpIterator Grp = Pkg.Group();
+       pkgCache::PkgIterator P = Grp.PackageList();
+       for (; P.end() != true; P = Grp.NextPkg(P))
+       {
+        if (P == Pkg)
+           continue;
+        if (P->CurrentVer != 0 || (PurgePkgs == true && P->CurrentState != pkgCache::State::NotInstalled))
+        {
+           // TRANSLATORS: Note, this is not an interactive question
+           ioprintf(c1out,_("Package '%s' is not installed, so not removed. Did you mean '%s'?\n"),
+                 Pkg.FullName(true).c_str(), P.FullName(true).c_str());
+           break;
+        }
+       }
+       if (P.end() == true)
+        ioprintf(c1out,_("Package '%s' is not installed, so not removed\n"),Pkg.FullName(true).c_str());
+       // MarkInstall refuses to install packages on hold
+       Pkg->SelectedState = pkgCache::State::Hold;
+    }
+    else
+       Cache->GetDepCache()->MarkDelete(Pkg, PurgePkgs);
+ }
+                                                                       /*}}}*/
diff --combined cmdline/apt-get.cc
index 1943a0fa76d6ae7455ca061529967e1d06c878da,a58386eb0a15ee03eebf4f16896ba35a38d9b38e..bd866bc8c66ee3e510d456b7593558ded17ae2cb
@@@ -76,6 -76,7 +76,7 @@@
  #include <stdio.h>
  #include <stdlib.h>
  #include <string.h>
+ #include <sys/ioctl.h>
  #include <sys/stat.h>
  #include <sys/statfs.h>
  #include <sys/statvfs.h>
@@@ -755,6 -756,7 +756,7 @@@ static bool DoSource(CommandLine &CmdL
  
     // Load the requestd sources into the fetcher
     unsigned J = 0;
+    std::string UntrustedList;
     for (const char **I = CmdL.FileList + 1; *I != 0; I++, J++)
     {
        string Src;
        if (Last == 0) {
         return _error->Error(_("Unable to find a source package for %s"),Src.c_str());
        }
+       if (Last->Index().IsTrusted() == false)
+          UntrustedList += Src + " ";
        
        string srec = Last->AsStr();
        string::size_type pos = srec.find("\nVcs-");
         queued.insert(Last->Index().ArchiveURI(I->Path));
  
         // check if we have a file with that md5 sum already localy
 -       if(!I->MD5Hash.empty() && FileExists(flNotDir(I->Path)))  
 -       {
 -          FileFd Fd(flNotDir(I->Path), FileFd::ReadOnly);
 -          MD5Summation sum;
 -          sum.AddFD(Fd.Fd(), Fd.Size());
 -          Fd.Close();
 -          if((string)sum.Result() == I->MD5Hash) 
 +       std::string localFile = flNotDir(I->Path);
 +       if (FileExists(localFile) == true)
 +          if(I->Hashes.VerifyFile(localFile) == true)
            {
               ioprintf(c1out,_("Skipping already downloaded file '%s'\n"),
 -                      flNotDir(I->Path).c_str());
 +                      localFile.c_str());
               continue;
            }
 +
 +       // see if we have a hash (Acquire::ForceHash is the only way to have none)
 +       if (I->Hashes.usable() == false && _config->FindB("APT::Get::AllowUnauthenticated",false) == false)
 +       {
 +          ioprintf(c1out, "Skipping download of file '%s' as requested hashsum is not available for authentication\n",
 +                   localFile.c_str());
 +          continue;
         }
  
         new pkgAcqFile(&Fetcher,Last->Index().ArchiveURI(I->Path),
 -                      I->MD5Hash,I->Size,
 -                      Last->Index().SourceInfo(*Last,*I),Src);
 +                      I->Hashes, I->Size, Last->Index().SourceInfo(*Last,*I), Src);
        }
     }
+    // check authentication status of the source as well
+    if (UntrustedList != "" && !AuthPrompt(UntrustedList, false))
+       return false;
     
     // Display statistics
     unsigned long long FetchBytes = Fetcher.FetchNeeded();
@@@ -1054,30 -1061,7 +1063,30 @@@ static bool DoBuildDep(CommandLine &Cmd
     for (const char **I = CmdL.FileList + 1; *I != 0; I++, J++)
     {
        string Src;
 -      pkgSrcRecords::Parser *Last = FindSrc(*I,Recs,SrcRecs,Src,Cache);
 +      pkgSrcRecords::Parser *Last = 0;
 +
 +      // a unpacked debian source tree
 +      if (DirectoryExists(*I))
 +      {
 +         // FIXME: how can we make this more elegant?
 +         std::string TypeName = "debian/control File Source Index";
 +         pkgIndexFile::Type *Type = pkgIndexFile::Type::GetType(TypeName.c_str());
 +         if(Type != NULL)
 +            Last = Type->CreateSrcPkgParser(*I);
 +      }
 +      // if its a local file (e.g. .dsc) use this
 +      else if (FileExists(*I))
 +      {
 +         // see if we can get a parser for this pkgIndexFile type
 +         string TypeName = flExtension(*I) + " File Source Index";
 +         pkgIndexFile::Type *Type = pkgIndexFile::Type::GetType(TypeName.c_str());
 +         if(Type != NULL)
 +            Last = Type->CreateSrcPkgParser(*I);
 +      } else {
 +         // normal case, search the cache for the source file
 +         Last = FindSrc(*I,Recs,SrcRecs,Src,Cache);
 +      }
 +
        if (Last == 0)
         return _error->Error(_("Unable to find a source package for %s"),Src.c_str());
              
        }
        else if (Last->BuildDepends(BuildDeps, _config->FindB("APT::Get::Arch-Only", false), StripMultiArch) == false)
            return _error->Error(_("Unable to get build-dependency information for %s"),Src.c_str());
 -   
 +
        // Also ensure that build-essential packages are present
        Configuration::Item const *Opts = _config->Tree("APT::Build-Essential");
        if (Opts) 
diff --combined debian/changelog
index ce57ed639bcb19dd44aa2507a8bfabcfb11f2ef0,f03f73b83abb52ad2454306aab85ae72ed90a28c..193977d40d04630b57627f60da90455e69192b73
@@@ -1,16 -1,44 +1,57 @@@
 +apt (1.1~exp1) UNRELEASED; urgency=low
 +
 +  [ Michael Vogt ]
 +  * lp:~mvo/apt/webserver-simulate-broken-with-fix346386:
 +    - fix invalid InRelease file download checking and add regression
 +      test to server broken files to the buildin test webserver
 +  * stop exporting the accidently exported parsenetrc() symbol
 +  * [ABI-Break] lp:~mvo/apt/source-hashes:
 +    - use sha{512,256,1} for deb-src when available LP: #1098738
 +  * [ABI-Break] remove the PACKAGE_MATCHER_ABI_COMPAT defines
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Wed, 07 May 2014 17:48:24 +0200
 +
+ apt (1.0.4) unstable; urgency=low
+   [ Michael Vogt ]
+   * Implement CacheDB for source packages in apt-ftparchive
+   * apt-private/acqprogress.cc: reset color in apt update
+   * Show progress in run-tests
+   * Never parse Version/Architecture tags in a Translation-$lang file
+   * Show upgradable packages after apt update (Closes: 748389)
+   * Fix various errors found by clang -fsanitize=address
+   * Fix various errors foudn by clang scan-build
+   * Show unauthenticated warning for source packages as well (Closes: #749795)
+   * Add compat mode for old (32bit FileSize) CacheDB (LP: #1274466)
+   * cmdline/apt-helper.cc: use less generic description/short-description 
+     in apt-helper download
+   * add pkgSrcRecords::Step() to step through all the pkgSrcRecords
+     (thanks to Helmut Grohne)
+   [ David Kalnischkies ]
+   * initialize Verify in second pkgAcqIndex constructor
+   * consistently fail if Smart* packagemanager actions fail
+   * fix tight loop detection and temporary removes
+   * if Resolver fails, do not continue even if not broken
+   * check exit status of external solvers
+   * do not revert candidate for protected packages (Closes: 745046)
+   * support Acquire::GzipIndexes in dumpavail (Closes: 742835)
+   [ Stefano Zacchiroli ]
+   * EDSP doc: fix typo in Request stanza description
+   * EDSP: bump protocol version to 0.5
+   * EDSP: add Architecture(s) multi-arch fields to the Request stanza
+   * EDSP: add Source field to Package stanzas
+   * EDSP: add APT-Release field to Package stanzas
+   [ Sebastian Schmidt ]
+   * fix screen width detection for apt/apt-get lists (Closes: 748430, 747942)
+   [ Milo Casagrande ]
+   * Italian program translation update (Closes: 750009)
+  -- Michael Vogt <mvo@debian.org>  Tue, 10 Jun 2014 14:55:05 +0200
  apt (1.0.3) unstable; urgency=medium
  
    [ Michael Vogt ]
index 9b280c04022c116d8d6a7c67f4385aadedd9a716,0000000000000000000000000000000000000000..13b063d76d92fd8e7e6ff641e673d65a827c1d75
mode 100644,000000..100644
--- /dev/null
@@@ -1,1607 -1,0 +1,1619 @@@
-  (c++)"pkgRecords::Parser::~Parser()@Base" 0.8.0
 +libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER#
 +* Build-Depends-Package: libapt-pkg-dev
 + TFRewritePackageOrder@Base 0.8.0
 + TFRewriteSourceOrder@Base 0.8.0
 + (c++)"FileExists(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"IdentCdrom(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int)@Base" 0.8.0
 + (c++)"ListUpdate(pkgAcquireStatus&, pkgSourceList&, int)@Base" 0.8.0
 + (c++)"MountCdrom(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"ParseCWord(char const*&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0
 + (c++)"ReadPinDir(pkgPolicy&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"RunScripts(char const*)@Base" 0.8.0
 + (c++)"SafeGetCWD()@Base" 0.8.0
 + (c++)"parsenetrc(char*, char*, char*, char*)@Base" 0.8.0
 + (c++)"QuoteString(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@Base" 0.8.0
 + (c++)"ReadPinFile(pkgPolicy&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"RegexChoice(RxChoiceList*, char const**, char const**)@Base" 0.8.0
 + (c++)"SetNonBlock(int, bool)@Base" 0.8.0
 + (c++)"flExtension(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"Base64Encode(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"ReadMessages(int, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@Base" 0.8.0
 + (c++)"SetCloseExec(int, bool)@Base" 0.8.0
 + (c++)"StringToBool(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)@Base" 0.8.0
 + (c++)"UnmountCdrom(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"_GetErrorObj()@Base" 0.8.0
 + (c++)"pkgFixBroken(pkgDepCache&)@Base" 0.8.0
 + (c++)"DeQuoteString(__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&)@Base" 0.8.0
 + (c++)"DeQuoteString(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"OutputInDepth(unsigned long, char const*)@Base" 0.8.0
 + (c++)"ReadConfigDir(Configuration&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, unsigned int const&)@Base" 0.8.0
 + (c++)"URItoFileName(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"UTF8ToCodeset(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >*)@Base" 0.8.0
 + (c++)"pkgAllUpgrade(pkgDepCache&)@Base" 0.8.0
 + (c++)"pkgInitConfig(Configuration&)@Base" 0.8.0
 + (c++)"pkgInitSystem(Configuration&, pkgSystem*&)@Base" 0.8.0
 + (c++)"safe_snprintf(char*, char*, char const*, ...)@Base" 0.8.0
 + (c++)"stringcasecmp(__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, char const*, char const*)@Base" 0.8.0
 + (c++)"stringcasecmp(__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >)@Base" 0.8.0
 + (c++)"stringcasecmp(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@Base" 0.8.0
 + (c++)"stringcasecmp(char const*, char const*, char const*, char const*)@Base" 0.8.0
 + (c++)"tolower_ascii(int)@Base" 0.8.0
 + (c++)"ParseQuoteWord(char const*&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0
 + (c++)"ReadConfigFile(Configuration&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, unsigned int const&)@Base" 0.8.0
 + (c++)"TokSplitString(char, char*, char**, unsigned long)@Base" 0.8.0
 + (c++)"maybe_add_auth(URI&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgApplyStatus(pkgDepCache&)@Base" 0.8.0
 + (c++)"pkgDistUpgrade(pkgDepCache&)@Base" 0.8.0
 + (c++)"CheckDomainList(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"CreateDirectory(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"DirectoryExists(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"VectorizeString(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const&)@Base" 0.8.0
 + (c++)"pkgPrioSortList(pkgCache&, pkgCache::Version**)@Base" 0.8.0
 + (c++)"pkgMakeStatusCache(pkgSourceList&, OpProgress&, MMap**, bool)@Base" 0.8.0
 + (c++)"pkgMinimizeUpgrade(pkgDepCache&)@Base" 0.8.0
 + (c++)"GetListOfFilesInDir(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool const&)@Base" 0.8.0
 + (c++)"GetListOfFilesInDir(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, bool const&)@Base" 0.8.0
 + (c++)"pkgMakeOnlyStatusCache(OpProgress&, DynamicMMap**)@Base" 0.8.0
 + (c++)"WaitFd(int, bool, unsigned long)@Base" 0.8.0
 + (c++)"GetLock(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@Base" 0.8.0
 + (c++)"Hex2Num(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned char*, unsigned int)@Base" 0.8.0
 + (c++)"CopyFile(FileFd&, FileFd&)@Base" 0.8.0
 + (c++)"ExecFork()@Base" 0.8.0
 + (c++)"ExecWait(int, char const*, bool)@Base" 0.8.0
 + (c++)"StrToNum(char const*, unsigned long&, unsigned int, unsigned int)@Base" 0.8.0
 + (c++)"SubstVar(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"SubstVar(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, SubstVar const*)@Base" 0.8.0
 + (c++)"flNoLink(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"flNotDir(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"ioprintf(std::basic_ostream<char, std::char_traits<char> >&, char const*, ...)@Base" 0.8.0
 + (c++)"IsMounted(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0
 + (c++)"LookupTag(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, char const*)@Base" 0.8.0
 + (c++)"SizeToStr(double)@Base" 0.8.0
 + (c++)"TFRewrite(_IO_FILE*, pkgTagSection const&, char const**, TFRewriteData*)@Base" 0.8.0
 + (c++)"TimeToStr(unsigned long)@Base" 0.8.0
 + (c++)"_strstrip(char*)@Base" 0.8.0
 + (c++)"flCombine(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"flNotFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"stringcmp(__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, char const*, char const*)@Base" 0.8.0
 + (c++)"stringcmp(__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >)@Base" 0.8.0
 + (c++)"stringcmp(char const*, char const*, char const*, char const*)@Base" 0.8.0
 + (c++)"strprintf(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char const*, ...)@Base" 0.8.0
 + (c++)"guard variable for pkgCacheGenerator::Dynamic<pkgCache::DepIterator>::toReMap@Base" 0.8.0
 + (c++)"guard variable for pkgCacheGenerator::Dynamic<pkgCache::GrpIterator>::toReMap@Base" 0.8.0
 + (c++)"guard variable for pkgCacheGenerator::Dynamic<pkgCache::PkgIterator>::toReMap@Base" 0.8.0
 + (c++)"guard variable for pkgCacheGenerator::Dynamic<pkgCache::PrvIterator>::toReMap@Base" 0.8.0
 + (c++)"guard variable for pkgCacheGenerator::Dynamic<pkgCache::VerIterator>::toReMap@Base" 0.8.0
 + (c++)"guard variable for pkgCacheGenerator::Dynamic<pkgCache::DescIterator>::toReMap@Base" 0.8.0
 + (c++)"guard variable for pkgCacheGenerator::Dynamic<pkgCache::PkgFileIterator>::toReMap@Base" 0.8.0
 + (c++)"HashString::SupportedHashes()@Base" 0.8.0
 + (c++)"HashString::_SupportedHashes@Base" 0.8.0
 + (c++)"HashString::HashString(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"HashString::HashString(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"HashString::HashString()@Base" 0.8.0
 + (c++)"HashString::~HashString()@Base" 0.8.0
 + (c++)"OpProgress::CheckChange(float)@Base" 0.8.0
 + (c++)"OpProgress::Done()@Base" 0.8.0
 + (c++)"OpProgress::Update()@Base" 0.8.0
 + (c++)"OpProgress::OpProgress()@Base" 0.8.0
 + (c++)"OpProgress::~OpProgress()@Base" 0.8.0
 + (c++)"SourceCopy::GetFileName()@Base" 0.8.0
 + (c++)"SourceCopy::RewriteEntry(_IO_FILE*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"SourceCopy::Type()@Base" 0.8.0
 + (c++)"SourceCopy::~SourceCopy()@Base" 0.8.0
 + (c++)"pkgAcqFile::Custom600Headers()@Base" 0.8.0
 + (c++)"pkgAcqFile::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcqFile::DescURI()@Base" 0.8.0
 + (c++)"pkgAcqFile::HashSum()@Base" 0.8.0
 + (c++)"pkgAcqFile::~pkgAcqFile()@Base" 0.8.0
 + (c++)"pkgAcquire::WorkerStep(pkgAcquire::Worker*)@Base" 0.8.0
 + (c++)"pkgAcquire::FetchNeeded()@Base" 0.8.0
 + (c++)"pkgAcquire::TotalNeeded()@Base" 0.8.0
 + (c++)"pkgAcquire::MethodConfig::MethodConfig()@Base" 0.8.0
 + (c++)"pkgAcquire::PartialPresent()@Base" 0.8.0
 + (c++)"pkgAcquire::Add(pkgAcquire::Item*)@Base" 0.8.0
 + (c++)"pkgAcquire::Add(pkgAcquire::Worker*)@Base" 0.8.0
 + (c++)"pkgAcquire::Run(int)@Base" 0.8.0
 + (c++)"pkgAcquire::Bump()@Base" 0.8.0
 + (c++)"pkgAcquire::Item::Custom600Headers()@Base" 0.8.0
 + (c++)"pkgAcquire::Item::ReportMirrorFailure(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcquire::Item::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcquire::Item::Rename(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcquire::Item::HashSum()@Base" 0.8.0
 + (c++)"pkgAcquire::Item::Finished()@Base" 0.8.0
 + (c++)"pkgAcquire::Item::IsTrusted()@Base" 0.8.0
 + (c++)"pkgAcquire::Item::ShortDesc()@Base" 0.8.0
 + (c++)"pkgAcquire::Item::Item(pkgAcquire*)@Base" 0.8.0
 + (c++)"pkgAcquire::Item::~Item()@Base" 0.8.0
 + (c++)"pkgAcquire::Clean(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::Bump()@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::Cycle()@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::Dequeue(pkgAcquire::Item*)@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::Enqueue(pkgAcquire::ItemDesc&)@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::Startup()@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::FindItem(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::Worker*)@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::ItemDone(pkgAcquire::Queue::QItem*)@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::Shutdown(bool)@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::Queue(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire*)@Base" 0.8.0
 + (c++)"pkgAcquire::Queue::~Queue()@Base" 0.8.0
 + (c++)"pkgAcquire::Setup(pkgAcquireStatus*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgAcquire::Remove(pkgAcquire::Item*)@Base" 0.8.0
 + (c++)"pkgAcquire::Remove(pkgAcquire::Worker*)@Base" 0.8.0
 + (c++)"pkgAcquire::RunFds(fd_set*, fd_set*)@Base" 0.8.0
 + (c++)"pkgAcquire::SetFds(int&, fd_set*, fd_set*)@Base" 0.8.0
 + (c++)"pkgAcquire::UriEnd()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::OutFdReady()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::MediaChange(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::RunMessages()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::Capabilities(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::ReadMessages()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::MethodFailure()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::SendConfiguration()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::Pulse()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::Start()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::ItemDone()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::Construct()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::InFdReady()@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::QueueItem(pkgAcquire::Queue::QItem*)@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::Worker(pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::Worker(pkgAcquire::Queue*, pkgAcquire::MethodConfig*, pkgAcquireStatus*)@Base" 0.8.0
 + (c++)"pkgAcquire::Worker::~Worker()@Base" 0.8.0
 + (c++)"pkgAcquire::Dequeue(pkgAcquire::Item*)@Base" 0.8.0
 + (c++)"pkgAcquire::Enqueue(pkgAcquire::ItemDesc&)@Base" 0.8.0
 + (c++)"pkgAcquire::ItemDesc::~ItemDesc()@Base" 0.8.0
 + (c++)"pkgAcquire::Shutdown()@Base" 0.8.0
 + (c++)"pkgAcquire::UriBegin()@Base" 0.8.0
 + (c++)"pkgAcquire::GetConfig(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcquire::QueueName(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig const*&)@Base" 0.8.0
 + (c++)"pkgAcquire::pkgAcquire(pkgAcquireStatus*)@Base" 0.8.0
 + (c++)"pkgAcquire::pkgAcquire()@Base" 0.8.0
 + (c++)"pkgAcquire::~pkgAcquire()@Base" 0.8.0
 + (c++)"pkgRecords::Lookup(pkgCache::VerFileIterator const&)@Base" 0.8.0
 + (c++)"pkgRecords::Lookup(pkgCache::DescFileIterator const&)@Base" 0.8.0
 + (c++)"pkgRecords::Parser::Maintainer()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::SHA256Hash()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::Name()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::GetRec(char const*&, char const*&)@Base" 0.8.0
 + (c++)"pkgRecords::Parser::MD5Hash()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::FileName()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::Homepage()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::LongDesc()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::SHA1Hash()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::ShortDesc()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::SourcePkg()@Base" 0.8.0
 + (c++)"pkgRecords::Parser::SourceVer()@Base" 0.8.0
-  (c++)"pkgIndexFile::Type::~Type()@Base" 0.8.0
-  (c++)"pkgIndexFile::~pkgIndexFile()@Base" 0.8.0
 + (c++)"pkgRecords::pkgRecords(pkgCache&)@Base" 0.8.0
 + (c++)"pkgRecords::~pkgRecords()@Base" 0.8.0
 + (c++)"pkgTagFile::Step(pkgTagSection&)@Base" 0.8.0
 + (c++)"pkgTagFile::~pkgTagFile()@Base" 0.8.0
 + (c++)"CdromDevice::~CdromDevice()@Base" 0.8.0
 + (c++)"CommandLine::DispatchArg(CommandLine::Dispatch*, bool)@Base" 0.8.0
 + (c++)"CommandLine::SaveInConfig(unsigned int const&, char const* const*)@Base" 0.8.0
 + (c++)"CommandLine::Parse(int, char const**)@Base" 0.8.0
 + (c++)"CommandLine::HandleOpt(int&, int, char const**, char const*&, CommandLine::Args*, bool)@Base" 0.8.0
 + (c++)"CommandLine::CommandLine(CommandLine::Args*, Configuration*)@Base" 0.8.0
 + (c++)"CommandLine::~CommandLine()@Base" 0.8.0
 + (c++)"DynamicMMap::WriteString(char const*, unsigned long)@Base" 0.8.0
 + (c++)"DynamicMMap::Grow()@Base" 0.8.0
 + (c++)"DynamicMMap::Allocate(unsigned long)@Base" 0.8.0
 + (c++)"DynamicMMap::DynamicMMap(FileFd&, unsigned long, unsigned long const&, unsigned long const&, unsigned long const&)@Base" 0.8.0
 + (c++)"DynamicMMap::DynamicMMap(unsigned long, unsigned long const&, unsigned long const&, unsigned long const&)@Base" 0.8.0
 + (c++)"DynamicMMap::~DynamicMMap()@Base" 0.8.0
 + (c++)"GlobalError::DumpErrors(std::basic_ostream<char, std::char_traits<char> >&, GlobalError::MsgType const&, bool const&)@Base" 0.8.0
 + (c++)"GlobalError::PopMessage(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0
 + (c++)"GlobalError::InsertErrno(GlobalError::MsgType const&, char const*, char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::PushToStack()@Base" 0.8.0
 + (c++)"GlobalError::RevertToStack()@Base" 0.8.0
 + (c++)"GlobalError::MergeWithStack()@Base" 0.8.0
 + (c++)"GlobalError::Debug(char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::Errno(char const*, char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::Error(char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::Fatal(char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::DebugE(char const*, char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::FatalE(char const*, char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::Insert(GlobalError::MsgType const&, char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::Notice(char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::Discard()@Base" 0.8.0
 + (c++)"GlobalError::NoticeE(char const*, char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::Warning(char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::WarningE(char const*, char const*, ...)@Base" 0.8.0
 + (c++)"GlobalError::GlobalError()@Base" 0.8.0
 + (c++)"PackageCopy::GetFileName()@Base" 0.8.0
 + (c++)"PackageCopy::RewriteEntry(_IO_FILE*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"PackageCopy::Type()@Base" 0.8.0
 + (c++)"PackageCopy::~PackageCopy()@Base" 0.8.0
 + (c++)"pkgAcqIndex::Custom600Headers()@Base" 0.8.0
 + (c++)"pkgAcqIndex::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcqIndex::DescURI()@Base" 0.8.0
 + (c++)"pkgAcqIndex::HashSum()@Base" 0.8.0
 + (c++)"pkgAcqIndex::pkgAcqIndex(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, HashString, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcqIndex::~pkgAcqIndex()@Base" 0.8.0
 + (c++)"pkgDepCache::IsDeleteOk(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.8.0
 + (c++)"pkgDepCache::MarkDelete(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.8.0
 + (c++)"pkgDepCache::StateCache::StripEpoch(char const*)@Base" 0.8.0
 + (c++)"pkgDepCache::StateCache::Update(pkgCache::PkgIterator, pkgCache&)@Base" 0.8.0
 + (c++)"pkgDepCache::ActionGroup::release()@Base" 0.8.0
 + (c++)"pkgDepCache::ActionGroup::ActionGroup(pkgDepCache&)@Base" 0.8.0
 + (c++)"pkgDepCache::ActionGroup::~ActionGroup()@Base" 0.8.0
 + (c++)"pkgDepCache::IsInstallOk(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.8.0
 + (c++)"pkgDepCache::MarkInstall(pkgCache::PkgIterator const&, bool, unsigned long, bool, bool)@Base" 0.8.0
 + (c++)"pkgDepCache::MarkPackage(pkgCache::PkgIterator const&, pkgCache::VerIterator const&, bool const&, bool const&)@Base" 0.8.0
 + (c++)"pkgDepCache::MarkRequired(pkgDepCache::InRootSetFunc&)@Base" 0.8.0
 + (c++)"pkgDepCache::SetReInstall(pkgCache::PkgIterator const&, bool)@Base" 0.8.0
 + (c++)"pkgDepCache::VersionState(pkgCache::DepIterator, unsigned char, unsigned char, unsigned char)@Base" 0.8.0
 + (c++)"pkgDepCache::BuildGroupOrs(pkgCache::VerIterator const&)@Base" 0.8.0
 + (c++)"pkgDepCache::InRootSetFunc::InRootSet(pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"pkgDepCache::InRootSetFunc::~InRootSetFunc()@Base" 0.8.0
 + (c++)"pkgDepCache::readStateFile(OpProgress*)@Base" 0.8.0
 + (c++)"pkgDepCache::GetRootSetFunc()@Base" 0.8.0
 + (c++)"pkgDepCache::UpdateVerState(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgDepCache::writeStateFile(OpProgress*, bool)@Base" 0.8.0
 + (c++)"pkgDepCache::DependencyState(pkgCache::DepIterator&)@Base" 0.8.0
 + (c++)"pkgDepCache::DefaultRootSetFunc::InRootSet(pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"pkgDepCache::DefaultRootSetFunc::~DefaultRootSetFunc()@Base" 0.8.0
 + (c++)"pkgDepCache::MarkFollowsSuggests()@Base" 0.8.0
 + (c++)"pkgDepCache::MarkFollowsRecommends()@Base" 0.8.0
 + (c++)"pkgDepCache::Init(OpProgress*)@Base" 0.8.0
 + (c++)"pkgDepCache::Sweep()@Base" 0.8.0
 + (c++)"pkgDepCache::Policy::IsImportantDep(pkgCache::DepIterator const&)@Base" 0.8.0
 + (c++)"pkgDepCache::Policy::GetCandidateVer(pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"pkgDepCache::Policy::~Policy()@Base" 0.8.0
 + (c++)"pkgDepCache::Update(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgDepCache::Update(OpProgress*)@Base" 0.8.0
 + (c++)"pkgDepCache::Update(pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"pkgDepCache::CheckDep(pkgCache::DepIterator, int, pkgCache::PkgIterator&)@Base" 0.8.0
 + (c++)"pkgDepCache::MarkAuto(pkgCache::PkgIterator const&, bool)@Base" 0.8.0
 + (c++)"pkgDepCache::MarkKeep(pkgCache::PkgIterator const&, bool, bool, unsigned long)@Base" 0.8.0
 + (c++)"pkgDepCache::pkgDepCache(pkgCache*, pkgDepCache::Policy*)@Base" 0.8.0
 + (c++)"pkgDepCache::~pkgDepCache()@Base" 0.8.0
 + (c++)"pkgSimulate::ShortBreaks()@Base" 0.8.0
 + (c++)"pkgSimulate::Policy::GetCandidateVer(pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"pkgSimulate::Policy::~Policy()@Base" 0.8.0
 + (c++)"pkgSimulate::Remove(pkgCache::PkgIterator, bool)@Base" 0.8.0
 + (c++)"pkgSimulate::Install(pkgCache::PkgIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgSimulate::Describe(pkgCache::PkgIterator, std::basic_ostream<char, std::char_traits<char> >&, bool, bool)@Base" 0.8.0
 + (c++)"pkgSimulate::Configure(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgSimulate::pkgSimulate(pkgDepCache*)@Base" 0.8.0
 + (c++)"pkgSimulate::~pkgSimulate()@Base" 0.8.0
 + (c++)"debIFTypePkg::~debIFTypePkg()@Base" 0.8.0
 + (c++)"debIFTypeSrc::~debIFTypeSrc()@Base" 0.8.0
 + (c++)"debSLTypeDeb::~debSLTypeDeb()@Base" 0.8.0
 + (c++)"indexRecords::Load(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"indexRecords::Lookup(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"indexRecords::MetaKeys()@Base" 0.8.0
 + (c++)"indexRecords::indexRecords(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"indexRecords::indexRecords()@Base" 0.8.0
 + (c++)"indexRecords::~indexRecords()@Base" 0.8.0
 + (c++)"pkgAcqMethod::FetchResult::TakeHashes(Hashes&)@Base" 0.8.0
 + (c++)"pkgAcqMethod::FetchResult::FetchResult()@Base" 0.8.0
 + (c++)"pkgAcqMethod::Configuration(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcqMethod::Log(char const*, ...)@Base" 0.8.0
 + (c++)"pkgAcqMethod::Run(bool)@Base" 0.8.0
 + (c++)"pkgAcqMethod::Exit()@Base" 0.8.0
 + (c++)"pkgAcqMethod::Fail(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@Base" 0.8.0
 + (c++)"pkgAcqMethod::Fail(bool)@Base" 0.8.0
 + (c++)"pkgAcqMethod::Fetch(pkgAcqMethod::FetchItem*)@Base" 0.8.0
 + (c++)"pkgAcqMethod::Status(char const*, ...)@Base" 0.8.0
 + (c++)"pkgAcqMethod::URIDone(pkgAcqMethod::FetchResult&, pkgAcqMethod::FetchResult*)@Base" 0.8.0
 + (c++)"pkgAcqMethod::Redirect(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgAcqMethod::URIStart(pkgAcqMethod::FetchResult&)@Base" 0.8.0
 + (c++)"pkgAcqMethod::MediaFail(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcqMethod::pkgAcqMethod(char const*, unsigned long)@Base" 0.8.0
 + (c++)"pkgAcqMethod::~pkgAcqMethod()@Base" 0.8.0
 + (c++)"pkgCacheFile::BuildCaches(OpProgress*, bool)@Base" 0.8.0
 + (c++)"pkgCacheFile::BuildPolicy(OpProgress*)@Base" 0.8.0
 + (c++)"pkgCacheFile::BuildDepCache(OpProgress*)@Base" 0.8.0
 + (c++)"pkgCacheFile::BuildSourceList(OpProgress*)@Base" 0.8.0
 + (c++)"pkgCacheFile::Open(OpProgress*, bool)@Base" 0.8.0
 + (c++)"pkgCacheFile::Close()@Base" 0.8.0
 + (c++)"pkgCacheFile::pkgCacheFile()@Base" 0.8.0
 + (c++)"pkgCacheFile::~pkgCacheFile()@Base" 0.8.0
 + (c++)"pkgIndexFile::LanguageCode()@Base" 0.8.0
 + (c++)"pkgIndexFile::CheckLanguageCode(char const*)@Base" 0.8.0
 + (c++)"pkgIndexFile::TranslationsAvailable()@Base" 0.8.0
 + (c++)"pkgIndexFile::Type::GlobalList@Base" 0.8.0
 + (c++)"pkgIndexFile::Type::GlobalListLen@Base" 0.8.0
 + (c++)"pkgIndexFile::Type::GetType(char const*)@Base" 0.8.0
 + (c++)"pkgIndexFile::Type::Type()@Base" 0.8.0
-  (c++)"pkgSourceList::Type::~Type()@Base" 0.8.0
 + (c++)"pkgOrderList::VisitRDeps(bool (pkgOrderList::*)(pkgCache::DepIterator), pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::OrderUnpack(std::basic_string<char, std::char_traits<char>, std::allocator<char> >*)@Base" 0.8.0
 + (c++)"pkgOrderList::DepConfigure(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::DepUnPackDep(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::DepUnPackPre(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::DepUnPackCrit(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::DepUnPackPreD(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::OrderCompareA(void const*, void const*)@Base" 0.8.0
 + (c++)"pkgOrderList::OrderCompareB(void const*, void const*)@Base" 0.8.0
 + (c++)"pkgOrderList::OrderCritical()@Base" 0.8.0
 + (c++)"pkgOrderList::VisitProvides(pkgCache::DepIterator, bool)@Base" 0.8.0
 + (c++)"pkgOrderList::OrderConfigure()@Base" 0.8.0
 + (c++)"pkgOrderList::VisitRProvides(bool (pkgOrderList::*)(pkgCache::DepIterator), pkgCache::VerIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::Me@Base" 0.8.0
 + (c++)"pkgOrderList::DoRun()@Base" 0.8.0
 + (c++)"pkgOrderList::Score(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::AddLoop(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::FileCmp(pkgCache::PkgIterator, pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::CheckDep(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::DepRemove(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::IsMissing(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::VisitDeps(bool (pkgOrderList::*)(pkgCache::DepIterator), pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgOrderList::WipeFlags(unsigned long)@Base" 0.8.0
 + (c++)"pkgOrderList::pkgOrderList(pkgDepCache*)@Base" 0.8.0
 + (c++)"pkgOrderList::~pkgOrderList()@Base" 0.8.0
 + (c++)"Configuration::MatchAgainstConfig::MatchAgainstConfig(char const*)@Base" 0.8.0
 + (c++)"Configuration::MatchAgainstConfig::~MatchAgainstConfig()@Base" 0.8.0
 + (c++)"Configuration::Set(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"Configuration::Set(char const*, int const&)@Base" 0.8.0
 + (c++)"Configuration::Dump(std::basic_ostream<char, std::char_traits<char> >&)@Base" 0.8.0
 + (c++)"Configuration::Clear(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"Configuration::Clear(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int const&)@Base" 0.8.0
 + (c++)"Configuration::Clear(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"Configuration::CndSet(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"Configuration::Lookup(char const*, bool const&)@Base" 0.8.0
 + (c++)"Configuration::Lookup(Configuration::Item*, char const*, unsigned long const&, bool const&)@Base" 0.8.0
 + (c++)"Configuration::Configuration(Configuration::Item const*)@Base" 0.8.0
 + (c++)"Configuration::Configuration()@Base" 0.8.0
 + (c++)"Configuration::~Configuration()@Base" 0.8.0
 + (c++)"WeakPointable::~WeakPointable()@Base" 0.8.0
 + (c++)"debListParser::NewVersion(pkgCache::VerIterator&)@Base" 0.8.0
 + (c++)"debListParser::UsePackage(pkgCache::PkgIterator&, pkgCache::VerIterator&)@Base" 0.8.0
 + (c++)"debListParser::Description()@Base" 0.8.0
 + (c++)"debListParser::ParseStatus(pkgCache::PkgIterator&, pkgCache::VerIterator&)@Base" 0.8.0
 + (c++)"debListParser::VersionHash()@Base" 0.8.0
 + (c++)"debListParser::Architecture()@Base" 0.8.0
 + (c++)"debListParser::ParseDepends(char const*, char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int&, bool const&, bool const&)@Base" 0.8.0
 + (c++)"debListParser::ParseDepends(pkgCache::VerIterator&, char const*, unsigned int)@Base" 0.8.0
 + (c++)"debListParser::ParseProvides(pkgCache::VerIterator&)@Base" 0.8.0
 + (c++)"debListParser::ArchitectureAll()@Base" 0.8.0
 + (c++)"debListParser::ConvertRelation(char const*, unsigned int&)@Base" 0.8.0
 + (c++)"debListParser::Description_md5()@Base" 0.8.0
 + (c++)"debListParser::LoadReleaseInfo(pkgCache::PkgFileIterator&, FileFd&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"debListParser::UniqFindTagWrite(char const*)@Base" 0.8.0
 + (c++)"debListParser::DescriptionLanguage()@Base" 0.8.0
 + (c++)"debListParser::Size()@Base" 0.8.0
 + (c++)"debListParser::Step()@Base" 0.8.0
 + (c++)"debListParser::Offset()@Base" 0.8.0
 + (c++)"debListParser::GetPrio(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"debListParser::Package()@Base" 0.8.0
 + (c++)"debListParser::Version()@Base" 0.8.0
 + (c++)"debListParser::GrabWord(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, debListParser::WordList*, unsigned char&)@Base" 0.8.0
 + (c++)"debListParser::debListParser(FileFd*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"debListParser::~debListParser()@Base" 0.8.0
 + (c++)"pkgAcqArchive::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcqArchive::DescURI()@Base" 0.8.0
 + (c++)"pkgAcqArchive::HashSum()@Base" 0.8.0
 + (c++)"pkgAcqArchive::Finished()@Base" 0.8.0
 + (c++)"pkgAcqArchive::IsTrusted()@Base" 0.8.0
 + (c++)"pkgAcqArchive::QueueNext()@Base" 0.8.0
 + (c++)"pkgAcqArchive::ShortDesc()@Base" 0.8.0
 + (c++)"pkgAcqArchive::pkgAcqArchive(pkgAcquire*, pkgSourceList*, pkgRecords*, pkgCache::VerIterator const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0
 + (c++)"pkgAcqArchive::~pkgAcqArchive()@Base" 0.8.0
 + (c++)"pkgAcqMetaSig::Custom600Headers()@Base" 0.8.0
 + (c++)"pkgAcqMetaSig::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcqMetaSig::DescURI()@Base" 0.8.0
 + (c++)"pkgAcqMetaSig::~pkgAcqMetaSig()@Base" 0.8.0
 + (c++)"pkgSourceList::ReadAppend(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgSourceList::ReadMainList()@Base" 0.8.0
 + (c++)"pkgSourceList::ReadSourceDir(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgSourceList::Read(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgSourceList::Type::GlobalList@Base" 0.8.0
 + (c++)"pkgSourceList::Type::GlobalListLen@Base" 0.8.0
 + (c++)"pkgSourceList::Type::GetType(char const*)@Base" 0.8.0
 + (c++)"pkgSourceList::Type::Type()@Base" 0.8.0
-  (c++)"pkgSrcRecords::Parser::~Parser()@Base" 0.8.0
 + (c++)"pkgSourceList::Reset()@Base" 0.8.0
 + (c++)"pkgSourceList::pkgSourceList(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgSourceList::pkgSourceList()@Base" 0.8.0
 + (c++)"pkgSourceList::~pkgSourceList()@Base" 0.8.0
 + (c++)"pkgSrcRecords::File::~File()@Base" 0.8.0
 + (c++)"pkgSrcRecords::Find(char const*, bool const&)@Base" 0.8.0
 + (c++)"pkgSrcRecords::Parser::BuildDepRec::~BuildDepRec()@Base" 0.8.0
 + (c++)"pkgSrcRecords::Parser::BuildDepType(unsigned char const&)@Base" 0.8.0
-  (c++)"debSLTypeDebian::~debSLTypeDebian()@Base" 0.8.0
 + (c++)"pkgSrcRecords::Restart()@Base" 0.8.0
 + (c++)"pkgSrcRecords::pkgSrcRecords(pkgSourceList&)@Base" 0.8.0
 + (c++)"pkgSrcRecords::~pkgSrcRecords()@Base" 0.8.0
 + (c++)"pkgTagSection::TrimRecord(bool, char const*&)@Base" 0.8.0
 + (c++)"pkgTagSection::Scan(char const*, unsigned long)@Base" 0.8.0
 + (c++)"pkgTagSection::Trim()@Base" 0.8.0
 + (c++)"pkgVendorList::CreateList(Configuration&)@Base" 0.8.0
 + (c++)"pkgVendorList::FindVendor(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)@Base" 0.8.0
 + (c++)"pkgVendorList::ReadMainList()@Base" 0.8.0
 + (c++)"pkgVendorList::LookupFingerprint(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgVendorList::Read(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgVendorList::~pkgVendorList()@Base" 0.8.0
 + (c++)"OpTextProgress::Done()@Base" 0.8.0
 + (c++)"OpTextProgress::Write(char const*)@Base" 0.8.0
 + (c++)"OpTextProgress::Update()@Base" 0.8.0
 + (c++)"OpTextProgress::OpTextProgress(Configuration&)@Base" 0.8.0
 + (c++)"OpTextProgress::~OpTextProgress()@Base" 0.8.0
 + (c++)"debIFTypeTrans::~debIFTypeTrans()@Base" 0.8.0
 + (c++)"debStatusIndex::debStatusIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"debStatusIndex::~debStatusIndex()@Base" 0.8.0
 + (c++)"debIFTypeStatus::~debIFTypeStatus()@Base" 0.8.0
 + (c++)"debRecordParser::Maintainer()@Base" 0.8.0
 + (c++)"debRecordParser::SHA256Hash()@Base" 0.8.0
 + (c++)"debRecordParser::Jump(pkgCache::VerFileIterator const&)@Base" 0.8.0
 + (c++)"debRecordParser::Jump(pkgCache::DescFileIterator const&)@Base" 0.8.0
 + (c++)"debRecordParser::Name()@Base" 0.8.0
 + (c++)"debRecordParser::GetRec(char const*&, char const*&)@Base" 0.8.0
 + (c++)"debRecordParser::MD5Hash()@Base" 0.8.0
 + (c++)"debRecordParser::FileName()@Base" 0.8.0
 + (c++)"debRecordParser::Homepage()@Base" 0.8.0
 + (c++)"debRecordParser::LongDesc()@Base" 0.8.0
 + (c++)"debRecordParser::SHA1Hash()@Base" 0.8.0
 + (c++)"debRecordParser::ShortDesc()@Base" 0.8.0
 + (c++)"debRecordParser::SourcePkg()@Base" 0.8.0
 + (c++)"debRecordParser::SourceVer()@Base" 0.8.0
 + (c++)"debRecordParser::debRecordParser(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgCache&)@Base" 0.8.0
 + (c++)"debRecordParser::~debRecordParser()@Base" 0.8.0
 + (c++)"debReleaseIndex::GetIndexFiles()@Base" 0.8.0
 + (c++)"debReleaseIndex::debSectionEntry::debSectionEntry(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&)@Base" 0.8.0
 + (c++)"debReleaseIndex::PushSectionEntry(debReleaseIndex::debSectionEntry const*)@Base" 0.8.0
 + (c++)"debReleaseIndex::PushSectionEntry(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, debReleaseIndex::debSectionEntry const*)@Base" 0.8.0
 + (c++)"debReleaseIndex::PushSectionEntry(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, debReleaseIndex::debSectionEntry const*)@Base" 0.8.0
 + (c++)"debReleaseIndex::debReleaseIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"debReleaseIndex::~debReleaseIndex()@Base" 0.8.0
 + (c++)"debSLTypeDebSrc::~debSLTypeDebSrc()@Base" 0.8.0
-  (c++)"pkgAcquireStatus::~pkgAcquireStatus()@Base" 0.8.0
 + (c++)"debSourcesIndex::debSourcesIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@Base" 0.8.0
 + (c++)"debSourcesIndex::~debSourcesIndex()@Base" 0.8.0
 + (c++)"pkgAcqDiffIndex::ParseDiffIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcqDiffIndex::Custom600Headers()@Base" 0.8.0
 + (c++)"pkgAcqDiffIndex::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcqDiffIndex::DescURI()@Base" 0.8.0
 + (c++)"pkgAcqDiffIndex::pkgAcqDiffIndex(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, HashString)@Base" 0.8.0
 + (c++)"pkgAcqDiffIndex::~pkgAcqDiffIndex()@Base" 0.8.0
 + (c++)"pkgAcqMetaIndex::QueueIndexes(bool)@Base" 0.8.0
 + (c++)"pkgAcqMetaIndex::VerifyVendor(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcqMetaIndex::RetrievalDone(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcqMetaIndex::Custom600Headers()@Base" 0.8.0
 + (c++)"pkgAcqMetaIndex::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcqMetaIndex::DescURI()@Base" 0.8.0
 + (c++)"pkgAcqMetaIndex::AuthDone(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcqMetaIndex::pkgAcqMetaIndex(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<IndexTarget*, std::allocator<IndexTarget*> > const*, indexRecords*)@Base" 0.8.0
 + (c++)"pkgAcqMetaIndex::~pkgAcqMetaIndex()@Base" 0.8.0
 + (c++)"pkgVersionMatch::ExpressionMatches(char const*, char const*)@Base" 0.8.0
 + (c++)"pkgVersionMatch::ExpressionMatches(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@Base" 0.8.0
 + (c++)"pkgVersionMatch::Find(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgVersionMatch::MatchVer(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@Base" 0.8.0
 + (c++)"pkgVersionMatch::FileMatch(pkgCache::PkgFileIterator)@Base" 0.8.0
 + (c++)"pkgVersionMatch::pkgVersionMatch(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgVersionMatch::MatchType)@Base" 0.8.0
 + (c++)"pkgVersionMatch::~pkgVersionMatch()@Base" 0.8.0
 + (c++)"TranslationsCopy::CopyTranslations(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, pkgCdromStatus*)@Base" 0.8.0
 + (c++)"debPackagesIndex::debPackagesIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"debPackagesIndex::~debPackagesIndex()@Base" 0.8.0
 + (c++)"pkgAcqIndexDiffs::QueueNextDiff()@Base" 0.8.0
 + (c++)"pkgAcqIndexDiffs::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcqIndexDiffs::Finish(bool)@Base" 0.8.0
 + (c++)"pkgAcqIndexDiffs::DescURI()@Base" 0.8.0
 + (c++)"pkgAcqIndexDiffs::pkgAcqIndexDiffs(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, HashString, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<DiffInfo, std::allocator<DiffInfo> >)@Base" 0.8.0
 + (c++)"pkgAcqIndexDiffs::~pkgAcqIndexDiffs()@Base" 0.8.0
 + (c++)"pkgAcqIndexTrans::Custom600Headers()@Base" 0.8.0
 + (c++)"pkgAcqIndexTrans::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0
 + (c++)"pkgAcqIndexTrans::pkgAcqIndexTrans(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgAcqIndexTrans::~pkgAcqIndexTrans()@Base" 0.8.0
 + (c++)"pkgAcquireStatus::Done(pkgAcquire::ItemDesc&)@Base" 0.8.0
 + (c++)"pkgAcquireStatus::Fail(pkgAcquire::ItemDesc&)@Base" 0.8.0
 + (c++)"pkgAcquireStatus::Stop()@Base" 0.8.0
 + (c++)"pkgAcquireStatus::Fetch(pkgAcquire::ItemDesc&)@Base" 0.8.0
 + (c++)"pkgAcquireStatus::Pulse(pkgAcquire*)@Base" 0.8.0
 + (c++)"pkgAcquireStatus::Start()@Base" 0.8.0
 + (c++)"pkgAcquireStatus::IMSHit(pkgAcquire::ItemDesc&)@Base" 0.8.0
 + (c++)"pkgAcquireStatus::pkgAcquireStatus()@Base" 0.8.0
-  (c++)"pkgCacheGenerator::ListParser::~ListParser()@Base" 0.8.0
 + (c++)"PreferenceSection::TrimRecord(bool, char const*&)@Base" 0.8.0
 + (c++)"pkgArchiveCleaner::Go(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgCache&)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::ListParser::NewDepends(pkgCache::VerIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsigned int)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::ListParser::NewProvides(pkgCache::VerIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::ListParser::CollectFileProvides(pkgCache&, pkgCache::VerIterator&)@Base" 0.8.0
-  (c++)"pkgVersioningSystem::~pkgVersioningSystem()@Base" 0.8.0
 + (c++)"pkgCacheGenerator::NewFileVer(pkgCache::VerIterator&, pkgCacheGenerator::ListParser&)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::NewPackage(pkgCache::PkgIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::SelectFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgIndexFile const&, unsigned long)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::FinishCache(OpProgress*)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::NewFileDesc(pkgCache::DescIterator&, pkgCacheGenerator::ListParser&)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::MakeStatusCache(pkgSourceList&, OpProgress*, MMap**, bool)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::WriteUniqString(char const*, unsigned int)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::CreateDynamicMMap(FileFd*, unsigned long)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::MergeFileProvides(pkgCacheGenerator::ListParser&)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::MakeOnlyStatusCache(OpProgress*, DynamicMMap**)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::ReMap(void const*, void const*)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::Dynamic<pkgCache::DepIterator>::toReMap@Base" 0.8.0
 + (c++)"pkgCacheGenerator::Dynamic<pkgCache::GrpIterator>::toReMap@Base" 0.8.0
 + (c++)"pkgCacheGenerator::Dynamic<pkgCache::PkgIterator>::toReMap@Base" 0.8.0
 + (c++)"pkgCacheGenerator::Dynamic<pkgCache::PrvIterator>::toReMap@Base" 0.8.0
 + (c++)"pkgCacheGenerator::Dynamic<pkgCache::VerIterator>::toReMap@Base" 0.8.0
 + (c++)"pkgCacheGenerator::Dynamic<pkgCache::DescIterator>::toReMap@Base" 0.8.0
 + (c++)"pkgCacheGenerator::Dynamic<pkgCache::PkgFileIterator>::toReMap@Base" 0.8.0
 + (c++)"pkgCacheGenerator::NewGroup(pkgCache::GrpIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::MergeList(pkgCacheGenerator::ListParser&, pkgCache::VerIterator*)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::pkgCacheGenerator(DynamicMMap*, OpProgress*)@Base" 0.8.0
 + (c++)"pkgCacheGenerator::~pkgCacheGenerator()@Base" 0.8.0
 + (c++)"pkgPackageManager::FixMissing()@Base" 0.8.0
 + (c++)"pkgPackageManager::EarlyRemove(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgPackageManager::GetArchives(pkgAcquire*, pkgSourceList*, pkgRecords*)@Base" 0.8.0
 + (c++)"pkgPackageManager::SmartRemove(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgPackageManager::SmartUnPack(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgPackageManager::ConfigureAll()@Base" 0.8.0
 + (c++)"pkgPackageManager::ImmediateAdd(pkgCache::PkgIterator, bool, unsigned int const&)@Base" 0.8.0
 + (c++)"pkgPackageManager::OrderInstall()@Base" 0.8.0
 + (c++)"pkgPackageManager::DepAlwaysTrue(pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"pkgPackageManager::CheckRConflicts(pkgCache::PkgIterator, pkgCache::DepIterator, char const*)@Base" 0.8.0
 + (c++)"pkgPackageManager::CreateOrderList()@Base" 0.8.0
 + (c++)"pkgPackageManager::DoInstallPostFork(int)@Base" 0.8.0
 + (c++)"pkgPackageManager::Go(int)@Base" 0.8.0
 + (c++)"pkgPackageManager::Reset()@Base" 0.8.0
 + (c++)"pkgPackageManager::Remove(pkgCache::PkgIterator, bool)@Base" 0.8.0
 + (c++)"pkgPackageManager::Install(pkgCache::PkgIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgPackageManager::Configure(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgPackageManager::DoInstall(int)@Base" 0.8.0
 + (c++)"pkgPackageManager::pkgPackageManager(pkgDepCache*)@Base" 0.8.0
 + (c++)"pkgPackageManager::~pkgPackageManager()@Base" 0.8.0
 + (c++)"debSrcRecordParser::BuildDepends(std::vector<pkgSrcRecords::Parser::BuildDepRec, std::allocator<pkgSrcRecords::Parser::BuildDepRec> >&, bool const&, bool const&)@Base" 0.8.0
 + (c++)"debSrcRecordParser::Jump(unsigned long const&)@Base" 0.8.0
 + (c++)"debSrcRecordParser::Step()@Base" 0.8.0
 + (c++)"debSrcRecordParser::AsStr()@Base" 0.8.0
 + (c++)"debSrcRecordParser::Files(std::vector<pkgSrcRecords::File, std::allocator<pkgSrcRecords::File> >&)@Base" 0.8.0
 + (c++)"debSrcRecordParser::Offset()@Base" 0.8.0
 + (c++)"debSrcRecordParser::Restart()@Base" 0.8.0
 + (c++)"debSrcRecordParser::Binaries()@Base" 0.8.0
 + (c++)"debSrcRecordParser::~debSrcRecordParser()@Base" 0.8.0
 + (c++)"pkgProblemResolver::MakeScores()@Base" 0.8.0
 + (c++)"pkgProblemResolver::ResolveByKeep()@Base" 0.8.0
 + (c++)"pkgProblemResolver::InstallProtect()@Base" 0.8.0
 + (c++)"pkgProblemResolver::This@Base" 0.8.0
 + (c++)"pkgProblemResolver::Resolve(bool)@Base" 0.8.0
 + (c++)"pkgProblemResolver::DoUpgrade(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgProblemResolver::ScoreSort(void const*, void const*)@Base" 0.8.0
 + (c++)"pkgProblemResolver::pkgProblemResolver(pkgDepCache*)@Base" 0.8.0
 + (c++)"pkgProblemResolver::~pkgProblemResolver()@Base" 0.8.0
 + (c++)"debVersioningSystem::CmpFragment(char const*, char const*, char const*, char const*)@Base" 0.8.0
 + (c++)"debVersioningSystem::DoCmpVersion(char const*, char const*, char const*, char const*)@Base" 0.8.0
 + (c++)"debVersioningSystem::DoCmpReleaseVer(char const*, char const*, char const*, char const*)@Base" 0.8.0
 + (c++)"debVersioningSystem::UpstreamVersion(char const*)@Base" 0.8.0
 + (c++)"debVersioningSystem::CheckDep(char const*, int, char const*)@Base" 0.8.0
 + (c++)"debVersioningSystem::debVersioningSystem()@Base" 0.8.0
 + (c++)"debVersioningSystem::~debVersioningSystem()@Base" 0.8.0
 + (c++)"pkgUdevCdromDevices::Scan()@Base" 0.8.0
 + (c++)"pkgUdevCdromDevices::Dlopen()@Base" 0.8.0
 + (c++)"pkgUdevCdromDevices::pkgUdevCdromDevices()@Base" 0.8.0
 + (c++)"pkgUdevCdromDevices::~pkgUdevCdromDevices()@Base" 0.8.0
 + (c++)"pkgVersioningSystem::GlobalList@Base" 0.8.0
 + (c++)"pkgVersioningSystem::GlobalListLen@Base" 0.8.0
 + (c++)"pkgVersioningSystem::TestCompatibility(pkgVersioningSystem const&)@Base" 0.8.0
 + (c++)"pkgVersioningSystem::GetVS(char const*)@Base" 0.8.0
 + (c++)"pkgVersioningSystem::pkgVersioningSystem()@Base" 0.8.0
-  (c++)"IndexCopy::~IndexCopy()@Base" 0.8.0
 + (c++)"debTranslationsIndex::debTranslationsIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char const*)@Base" 0.8.0
 + (c++)"debTranslationsIndex::~debTranslationsIndex()@Base" 0.8.0
 + (c++)"APT::CacheFilter::PackageNameMatchesRegEx::PackageNameMatchesRegEx(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"APT::CacheFilter::PackageNameMatchesRegEx::~PackageNameMatchesRegEx()@Base" 0.8.0
 + (c++)"APT::CacheFilter::PackageNameMatchesRegEx::operator()(pkgCache::GrpIterator const&)@Base" 0.8.0
 + (c++)"APT::CacheFilter::PackageNameMatchesRegEx::operator()(pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"APT::Configuration::getLanguages(bool const&, bool const&, char const**)@Base" 0.8.0
 + (c++)"APT::Configuration::getArchitectures(bool const&)@Base" 0.8.0
 + (c++)"APT::Configuration::checkArchitecture(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"APT::Configuration::getCompressionTypes(bool const&)@Base" 0.8.0
 + (c++)"APT::CacheSetHelper::canNotFindPkgName(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"APT::CacheSetHelper::canNotFindNewestVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"APT::CacheSetHelper::canNotFindCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"APT::CacheSetHelper::canNotFindInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"APT::CacheSetHelper::~CacheSetHelper()@Base" 0.8.0
 + (c++)"URI::NoUserPassword(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"URI::CopyFrom(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"URI::SiteOnly(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"URI::~URI()@Base" 0.8.0
 + (c++)"URI::operator std::basic_string<char, std::char_traits<char>, std::allocator<char> >()@Base" 0.8.0
 + (c++)"MMap::Map(FileFd&)@Base" 0.8.0
 + (c++)"MMap::Sync(unsigned long, unsigned long)@Base" 0.8.0
 + (c++)"MMap::Sync()@Base" 0.8.0
 + (c++)"MMap::Close(bool)@Base" 0.8.0
 + (c++)"MMap::MMap(FileFd&, unsigned long)@Base" 0.8.0
 + (c++)"MMap::MMap(unsigned long)@Base" 0.8.0
 + (c++)"MMap::~MMap()@Base" 0.8.0
 + (c++)"FileFd::Size()@Base" 0.8.0
 + (c++)"FileFd::Sync()@Base" 0.8.0
 + (c++)"FileFd::Tell()@Base" 0.8.0
 + (c++)"FileFd::Close()@Base" 0.8.0
 + (c++)"FileFd::~FileFd()@Base" 0.8.0
 + (c++)"Vendor::CheckDist(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"Vendor::Vendor(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<Vendor::Fingerprint*, std::allocator<Vendor::Fingerprint*> >*)@Base" 0.8.0
 + (c++)"Vendor::~Vendor()@Base" 0.8.0
 + (c++)"DiffInfo::~DiffInfo()@Base" 0.8.0
 + (c++)"pkgCache::CompTypeDeb(unsigned char)@Base" 0.8.0
 + (c++)"pkgCache::DepIterator::GlobOr(pkgCache::DepIterator&, pkgCache::DepIterator&)@Base" 0.8.0
 + (c++)"pkgCache::DepIterator::operator++(int)@Base" 0.8.0
 + (c++)"pkgCache::DepIterator::operator++()@Base" 0.8.0
 + (c++)"pkgCache::GrpIterator::operator++(int)@Base" 0.8.0
 + (c++)"pkgCache::GrpIterator::operator++()@Base" 0.8.0
 + (c++)"pkgCache::PkgIterator::operator++(int)@Base" 0.8.0
 + (c++)"pkgCache::PkgIterator::operator++()@Base" 0.8.0
 + (c++)"pkgCache::PrvIterator::operator++(int)@Base" 0.8.0
 + (c++)"pkgCache::PrvIterator::operator++()@Base" 0.8.0
 + (c++)"pkgCache::VerIterator::operator++(int)@Base" 0.8.0
 + (c++)"pkgCache::VerIterator::operator++()@Base" 0.8.0
 + (c++)"pkgCache::DescIterator::operator++(int)@Base" 0.8.0
 + (c++)"pkgCache::DescIterator::operator++()@Base" 0.8.0
 + (c++)"pkgCache::PkgFileIterator::IsOk()@Base" 0.8.0
 + (c++)"pkgCache::PkgFileIterator::RelStr()@Base" 0.8.0
 + (c++)"pkgCache::PkgFileIterator::operator++(int)@Base" 0.8.0
 + (c++)"pkgCache::PkgFileIterator::operator++()@Base" 0.8.0
 + (c++)"pkgCache::VerFileIterator::operator++(int)@Base" 0.8.0
 + (c++)"pkgCache::VerFileIterator::operator++()@Base" 0.8.0
 + (c++)"pkgCache::DescFileIterator::operator++(int)@Base" 0.8.0
 + (c++)"pkgCache::DescFileIterator::operator++()@Base" 0.8.0
 + (c++)"pkgCache::SingleArchFindPkg(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgCache::ReMap(bool const&)@Base" 0.8.0
 + (c++)"pkgCache::Header::Header()@Base" 0.8.0
 + (c++)"pkgCache::DepType(unsigned char)@Base" 0.8.0
 + (c++)"pkgCache::FindGrp(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgCache::FindPkg(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgCache::FindPkg(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgCache::CompType(unsigned char)@Base" 0.8.0
 + (c++)"pkgCache::Priority(unsigned char)@Base" 0.8.0
 + (c++)"pkgCache::pkgCache(MMap*, bool)@Base" 0.8.0
 + (c++)"pkgCache::~pkgCache()@Base" 0.8.0
 + (c++)"pkgCdrom::DropRepeats(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, char const*)@Base" 0.8.0
 + (c++)"pkgCdrom::FindPackages(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, pkgCdromStatus*, unsigned int)@Base" 0.8.0
 + (c++)"pkgCdrom::WriteDatabase(Configuration&)@Base" 0.8.0
 + (c++)"pkgCdrom::DropBinaryArch(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@Base" 0.8.0
 + (c++)"pkgCdrom::WriteSourceList(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, bool)@Base" 0.8.0
 + (c++)"pkgCdrom::ReduceSourcelist(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@Base" 0.8.0
 + (c++)"pkgCdrom::Add(pkgCdromStatus*)@Base" 0.8.0
 + (c++)"pkgCdrom::Ident(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, pkgCdromStatus*)@Base" 0.8.0
 + (c++)"pkgCdrom::Score(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"IndexCopy::CopyPackages(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, pkgCdromStatus*)@Base" 0.8.0
 + (c++)"IndexCopy::ReconstructChop(unsigned long&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"IndexCopy::ReconstructPrefix(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"IndexCopy::ConvertToSourceList(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0
 + (c++)"IndexCopy::ChopDirs(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int)@Base" 0.8.0
 + (c++)"IndexCopy::GrabFirst(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int)@Base" 0.8.0
-  (c++)"metaIndex::~metaIndex()@Base" 0.8.0
 + (c++)"SigVerify::CopyAndVerify(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)@Base" 0.8.0
 + (c++)"SigVerify::CopyMetaIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"SigVerify::Verify(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, indexRecords*)@Base" 0.8.0
 + (c++)"SigVerify::RunGPGV(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int const&, int*)@Base" 0.8.0
 + (c++)"debSystem::Initialize(Configuration&)@Base" 0.8.0
 + (c++)"debSystem::CheckUpdates()@Base" 0.8.0
 + (c++)"debSystem::AddStatusFiles(std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> >&)@Base" 0.8.0
 + (c++)"debSystem::ArchiveSupported(char const*)@Base" 0.8.0
 + (c++)"debSystem::Lock()@Base" 0.8.0
 + (c++)"debSystem::Score(Configuration const&)@Base" 0.8.0
 + (c++)"debSystem::UnLock(bool)@Base" 0.8.0
 + (c++)"debSystem::debSystem()@Base" 0.8.0
 + (c++)"debSystem::~debSystem()@Base" 0.8.0
-  (c++)"pkgSystem::~pkgSystem()@Base" 0.8.0
 + (c++)"pkgDPkgPM::SendV2Pkgs(_IO_FILE*)@Base" 0.8.0
 + (c++)"pkgDPkgPM::DoTerminalPty(int)@Base" 0.8.0
 + (c++)"pkgDPkgPM::WriteHistoryTag(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgDPkgPM::WriteApportReport(char const*, char const*)@Base" 0.8.0
 + (c++)"pkgDPkgPM::RunScriptsWithPkgs(char const*)@Base" 0.8.0
 + (c++)"pkgDPkgPM::handleDisappearAction(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
 + (c++)"pkgDPkgPM::Go(int)@Base" 0.8.0
 + (c++)"pkgDPkgPM::Reset()@Base" 0.8.0
 + (c++)"pkgDPkgPM::Remove(pkgCache::PkgIterator, bool)@Base" 0.8.0
 + (c++)"pkgDPkgPM::DoStdin(int)@Base" 0.8.0
 + (c++)"pkgDPkgPM::Install(pkgCache::PkgIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
 + (c++)"pkgDPkgPM::OpenLog()@Base" 0.8.0
 + (c++)"pkgDPkgPM::CloseLog()@Base" 0.8.0
 + (c++)"pkgDPkgPM::Configure(pkgCache::PkgIterator)@Base" 0.8.0
 + (c++)"pkgDPkgPM::pkgDPkgPM(pkgDepCache*)@Base" 0.8.0
 + (c++)"pkgDPkgPM::~pkgDPkgPM()@Base" 0.8.0
 + (c++)"pkgPolicy::GetPriority(pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"pkgPolicy::InitDefaults()@Base" 0.8.0
 + (c++)"pkgPolicy::GetCandidateVer(pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"pkgPolicy::PkgPin::~PkgPin()@Base" 0.8.0
 + (c++)"pkgPolicy::GetMatch(pkgCache::PkgIterator const&)@Base" 0.8.0
 + (c++)"pkgPolicy::CreatePin(pkgVersionMatch::MatchType, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, short)@Base" 0.8.0
 + (c++)"pkgPolicy::pkgPolicy(pkgCache*)@Base" 0.8.0
 + (c++)"pkgPolicy::~pkgPolicy()@Base" 0.8.0
 + (c++)"pkgSystem::GlobalList@Base" 0.8.0
 + (c++)"pkgSystem::Initialize(Configuration&)@Base" 0.8.0
 + (c++)"pkgSystem::GlobalListLen@Base" 0.8.0
 + (c++)"pkgSystem::Score(Configuration const&)@Base" 0.8.0
 + (c++)"pkgSystem::GetSystem(char const*)@Base" 0.8.0
 + (c++)"pkgSystem::pkgSystem()@Base" 0.8.0
-  (c++)"APT::Progress::PackageManagerFancy::GetNumberTerminalRows()@Base" 0.9.13~exp1
 + (c++)"HashString::VerifyFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.8.0
 + (c++)"HashString::empty() const@Base" 0.8.0
 + (c++)"HashString::toStr() const@Base" 0.8.0
 + (c++)"CommandLine::FileSize() const@Base" 0.8.0
 + (c++)"GlobalError::empty(GlobalError::MsgType const&) const@Base" 0.8.0
 + (c++)"debIFTypePkg::CreatePkgParser(pkgCache::PkgFileIterator) const@Base" 0.8.0
 + (c++)"debSLTypeDeb::CreateItem(std::vector<metaIndex*, std::allocator<metaIndex*> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 0.8.0
 + (c++)"indexRecords::GetValidUntil() const@Base" 0.8.0
 + (c++)"indexRecords::GetExpectedDist() const@Base" 0.8.0
 + (c++)"indexRecords::Exists(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.0
 + (c++)"indexRecords::GetDist() const@Base" 0.8.0
 + (c++)"indexRecords::CheckDist(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.8.0
 + (c++)"pkgIndexFile::ArchiveURI(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.8.0
 + (c++)"pkgIndexFile::SourceInfo(pkgSrcRecords::Parser const&, pkgSrcRecords::File const&) const@Base" 0.8.0
 + (c++)"pkgIndexFile::ArchiveInfo(pkgCache::VerIterator) const@Base" 0.8.0
 + (c++)"pkgIndexFile::FindInCache(pkgCache&) const@Base" 0.8.0
 + (c++)"pkgIndexFile::CreateSrcParser() const@Base" 0.8.0
 + (c++)"pkgIndexFile::MergeFileProvides(pkgCacheGenerator&, OpProgress*) const@Base" 0.8.0
 + (c++)"pkgIndexFile::MergeFileProvides(pkgCacheGenerator&, OpProgress&) const@Base" 0.8.0
 + (c++)"pkgIndexFile::Type::CreatePkgParser(pkgCache::PkgFileIterator) const@Base" 0.8.0
 + (c++)"pkgIndexFile::Merge(pkgCacheGenerator&, OpProgress*) const@Base" 0.8.0
 + (c++)"pkgIndexFile::Merge(pkgCacheGenerator&, OpProgress&) const@Base" 0.8.0
 + (c++)"Configuration::FindVector(char const*) const@Base" 0.8.0
 + (c++)"Configuration::MatchAgainstConfig::Match(char const*) const@Base" 0.8.0
 + (c++)"Configuration::Find(char const*, char const*) const@Base" 0.8.0
 + (c++)"Configuration::Item::FullTag(Configuration::Item const*) const@Base" 0.8.0
 + (c++)"Configuration::FindB(char const*, bool const&) const@Base" 0.8.0
 + (c++)"Configuration::FindI(char const*, int const&) const@Base" 0.8.0
 + (c++)"Configuration::Exists(char const*) const@Base" 0.8.0
 + (c++)"Configuration::FindAny(char const*, char const*) const@Base" 0.8.0
 + (c++)"Configuration::FindDir(char const*, char const*) const@Base" 0.8.0
 + (c++)"Configuration::FindFile(char const*, char const*) const@Base" 0.8.0
 + (c++)"Configuration::ExistsAny(char const*) const@Base" 0.8.0
 + (c++)"pkgSourceList::GetIndexes(pkgAcquire*, bool) const@Base" 0.8.0
 + (c++)"pkgSourceList::Type::FixupURI(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&) const@Base" 0.8.0
 + (c++)"pkgSourceList::Type::ParseLine(std::vector<metaIndex*, std::allocator<metaIndex*> >&, char const*, unsigned long const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.0
 + (c++)"pkgSourceList::FindIndex(pkgCache::PkgFileIterator, pkgIndexFile*&) const@Base" 0.8.0
 + (c++)"pkgTagSection::Find(char const*, char const*&, char const*&) const@Base" 0.8.0
 + (c++)"pkgTagSection::Find(char const*, unsigned int&) const@Base" 0.8.0
 + (c++)"pkgTagSection::FindI(char const*, long) const@Base" 0.8.0
 + (c++)"pkgTagSection::FindS(char const*) const@Base" 0.8.0
 + (c++)"pkgTagSection::FindULL(char const*, unsigned long long const&) const@Base" 0.8.0
 + (c++)"pkgTagSection::FindFlag(char const*, unsigned long&, unsigned long) const@Base" 0.8.0
 + (c++)"debStatusIndex::FindInCache(pkgCache&) const@Base" 0.8.0
 + (c++)"debStatusIndex::HasPackages() const@Base" 0.8.0
 + (c++)"debStatusIndex::Size() const@Base" 0.8.0
 + (c++)"debStatusIndex::Merge(pkgCacheGenerator&, OpProgress*) const@Base" 0.8.0
 + (c++)"debStatusIndex::Exists() const@Base" 0.8.0
 + (c++)"debStatusIndex::GetType() const@Base" 0.8.0
 + (c++)"debStatusIndex::Describe(bool) const@Base" 0.8.0
 + (c++)"debIFTypeStatus::CreatePkgParser(pkgCache::PkgFileIterator) const@Base" 0.8.0
 + (c++)"debReleaseIndex::ArchiveURI(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.0
 + (c++)"debReleaseIndex::GetIndexes(pkgAcquire*, bool const&) const@Base" 0.8.0
 + (c++)"debReleaseIndex::MetaIndexURI(char const*) const@Base" 0.8.0
 + (c++)"debReleaseIndex::MetaIndexFile(char const*) const@Base" 0.8.0
 + (c++)"debReleaseIndex::MetaIndexInfo(char const*) const@Base" 0.8.0
 + (c++)"debReleaseIndex::IndexURISuffix(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.0
 + (c++)"debReleaseIndex::SourceIndexURI(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.0
 + (c++)"debReleaseIndex::ComputeIndexTargets() const@Base" 0.8.0
 + (c++)"debReleaseIndex::SourceIndexURISuffix(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.0
 + (c++)"debReleaseIndex::Info(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.0
 + (c++)"debReleaseIndex::IndexURI(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.0
 + (c++)"debReleaseIndex::IsTrusted() const@Base" 0.8.0
 + (c++)"debSLTypeDebSrc::CreateItem(std::vector<metaIndex*, std::allocator<metaIndex*> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 0.8.0
 + (c++)"debSLTypeDebian::CreateItemInternal(std::vector<metaIndex*, std::allocator<metaIndex*> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 0.8.0
 + (c++)"debSourcesIndex::ArchiveURI(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.8.0
 + (c++)"debSourcesIndex::SourceInfo(pkgSrcRecords::Parser const&, pkgSrcRecords::File const&) const@Base" 0.8.0
 + (c++)"debSourcesIndex::HasPackages() const@Base" 0.8.0
 + (c++)"debSourcesIndex::CreateSrcParser() const@Base" 0.8.0
 + (c++)"debSourcesIndex::Info(char const*) const@Base" 0.8.0
 + (c++)"debSourcesIndex::Size() const@Base" 0.8.0
 + (c++)"debSourcesIndex::Exists() const@Base" 0.8.0
 + (c++)"debSourcesIndex::GetType() const@Base" 0.8.0
 + (c++)"debSourcesIndex::Describe(bool) const@Base" 0.8.0
 + (c++)"debSourcesIndex::IndexURI(char const*) const@Base" 0.8.0
 + (c++)"debPackagesIndex::ArchiveURI(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.8.0
 + (c++)"debPackagesIndex::ArchiveInfo(pkgCache::VerIterator) const@Base" 0.8.0
 + (c++)"debPackagesIndex::FindInCache(pkgCache&) const@Base" 0.8.0
 + (c++)"debPackagesIndex::HasPackages() const@Base" 0.8.0
 + (c++)"debPackagesIndex::Info(char const*) const@Base" 0.8.0
 + (c++)"debPackagesIndex::Size() const@Base" 0.8.0
 + (c++)"debPackagesIndex::Merge(pkgCacheGenerator&, OpProgress*) const@Base" 0.8.0
 + (c++)"debPackagesIndex::Exists() const@Base" 0.8.0
 + (c++)"debPackagesIndex::GetType() const@Base" 0.8.0
 + (c++)"debPackagesIndex::Describe(bool) const@Base" 0.8.0
 + (c++)"debPackagesIndex::IndexURI(char const*) const@Base" 0.8.0
 + (c++)"debSrcRecordParser::Maintainer() const@Base" 0.8.0
 + (c++)"debSrcRecordParser::Package() const@Base" 0.8.0
 + (c++)"debSrcRecordParser::Section() const@Base" 0.8.0
 + (c++)"debSrcRecordParser::Version() const@Base" 0.8.0
 + (c++)"debTranslationsIndex::GetIndexes(pkgAcquire*) const@Base" 0.8.0
 + (c++)"debTranslationsIndex::FindInCache(pkgCache&) const@Base" 0.8.0
 + (c++)"debTranslationsIndex::HasPackages() const@Base" 0.8.0
 + (c++)"debTranslationsIndex::Info(char const*) const@Base" 0.8.0
 + (c++)"debTranslationsIndex::Size() const@Base" 0.8.0
 + (c++)"debTranslationsIndex::Merge(pkgCacheGenerator&, OpProgress*) const@Base" 0.8.0
 + (c++)"debTranslationsIndex::Exists() const@Base" 0.8.0
 + (c++)"debTranslationsIndex::GetType() const@Base" 0.8.0
 + (c++)"debTranslationsIndex::Describe(bool) const@Base" 0.8.0
 + (c++)"debTranslationsIndex::IndexURI(char const*) const@Base" 0.8.0
 + (c++)"Vendor::GetVendorID() const@Base" 0.8.0
 + (c++)"Vendor::LookupFingerprint(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.8.0
 + (c++)"pkgCache::DepIterator::AllTargets() const@Base" 0.8.0
 + (c++)"pkgCache::DepIterator::IsCritical() const@Base" 0.8.0
 + (c++)"pkgCache::DepIterator::OwnerPointer() const@Base" 0.8.0
 + (c++)"pkgCache::DepIterator::SmartTargetPkg(pkgCache::PkgIterator&) const@Base" 0.8.0
 + (c++)"pkgCache::GrpIterator::OwnerPointer() const@Base" 0.8.0
 + (c++)"pkgCache::GrpIterator::FindPreferredPkg(bool const&) const@Base" 0.8.0
 + (c++)"pkgCache::GrpIterator::FindPkg(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.8.0
 + (c++)"pkgCache::GrpIterator::NextPkg(pkgCache::PkgIterator const&) const@Base" 0.8.0
 + (c++)"pkgCache::PkgIterator::CurVersion() const@Base" 0.8.0
 + (c++)"pkgCache::PkgIterator::CandVersion() const@Base" 0.8.0
 + (c++)"pkgCache::PkgIterator::OwnerPointer() const@Base" 0.8.0
 + (c++)"pkgCache::PkgIterator::State() const@Base" 0.8.0
 + (c++)"pkgCache::PkgIterator::FullName(bool const&) const@Base" 0.8.0
 + (c++)"pkgCache::PrvIterator::OwnerPointer() const@Base" 0.8.0
 + (c++)"pkgCache::VerIterator::CompareVer(pkgCache::VerIterator const&) const@Base" 0.8.0
 + (c++)"pkgCache::VerIterator::NewestFile() const@Base" 0.8.0
 + (c++)"pkgCache::VerIterator::Downloadable() const@Base" 0.8.0
 + (c++)"pkgCache::VerIterator::OwnerPointer() const@Base" 0.8.0
 + (c++)"pkgCache::VerIterator::TranslatedDescription() const@Base" 0.8.0
 + (c++)"pkgCache::VerIterator::RelStr() const@Base" 0.8.0
 + (c++)"pkgCache::VerIterator::Automatic() const@Base" 0.8.0
 + (c++)"pkgCache::DescIterator::OwnerPointer() const@Base" 0.8.0
 + (c++)"pkgCache::PkgFileIterator::OwnerPointer() const@Base" 0.8.0
 + (c++)"pkgCache::VerFileIterator::OwnerPointer() const@Base" 0.8.0
 + (c++)"pkgCache::DescFileIterator::OwnerPointer() const@Base" 0.8.0
 + (c++)"pkgCache::sHash(char const*) const@Base" 0.8.0
 + (c++)"pkgCache::sHash(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.0
 + (c++)"pkgCache::Header::CheckSizes(pkgCache::Header&) const@Base" 0.8.0
 + (c++)"debSystem::CreatePM(pkgDepCache*) const@Base" 0.8.0
 + (c++)"debSystem::FindIndex(pkgCache::PkgFileIterator, pkgIndexFile*&) const@Base" 0.8.0
 + (c++)"metaIndex::GetURI() const@Base" 0.8.0
 + (c++)"metaIndex::GetDist() const@Base" 0.8.0
 + (c++)"metaIndex::GetType() const@Base" 0.8.0
 + (c++)"typeinfo for OpProgress@Base" 0.8.0
 + (c++)"typeinfo for SourceCopy@Base" 0.8.0
 + (c++)"typeinfo for pkgAcqFile@Base" 0.8.0
 + (c++)"typeinfo for pkgAcquire@Base" 0.8.0
 + (c++)"typeinfo for DynamicMMap@Base" 0.8.0
 + (c++)"typeinfo for PackageCopy@Base" 0.8.0
 + (c++)"typeinfo for pkgAcqIndex@Base" 0.8.0
 + (c++)"typeinfo for pkgDepCache@Base" 0.8.0
 + (c++)"typeinfo for pkgSimulate@Base" 0.8.0
 + (c++)"typeinfo for debIFTypePkg@Base" 0.8.0
 + (c++)"typeinfo for debIFTypeSrc@Base" 0.8.0
 + (c++)"typeinfo for debSLTypeDeb@Base" 0.8.0
 + (c++)"typeinfo for indexRecords@Base" 0.8.0
 + (c++)"typeinfo for pkgAcqMethod@Base" 0.8.0
 + (c++)"typeinfo for pkgCacheFile@Base" 0.8.0
 + (c++)"typeinfo for pkgIndexFile@Base" 0.8.0
 + (c++)"typeinfo for WeakPointable@Base" 0.8.0
 + (c++)"typeinfo for debListParser@Base" 0.8.0
 + (c++)"typeinfo for pkgAcqArchive@Base" 0.8.0
 + (c++)"typeinfo for pkgAcqMetaSig@Base" 0.8.0
 + (c++)"typeinfo for pkgTagSection@Base" 0.8.0
 + (c++)"typeinfo for OpTextProgress@Base" 0.8.0
 + (c++)"typeinfo for debIFTypeTrans@Base" 0.8.0
 + (c++)"typeinfo for debStatusIndex@Base" 0.8.0
 + (c++)"typeinfo for debIFTypeStatus@Base" 0.8.0
 + (c++)"typeinfo for debRecordParser@Base" 0.8.0
 + (c++)"typeinfo for debReleaseIndex@Base" 0.8.0
 + (c++)"typeinfo for debSLTypeDebSrc@Base" 0.8.0
 + (c++)"typeinfo for debSLTypeDebian@Base" 0.8.0
 + (c++)"typeinfo for debSourcesIndex@Base" 0.8.0
 + (c++)"typeinfo for pkgAcqDiffIndex@Base" 0.8.0
 + (c++)"typeinfo for pkgAcqMetaIndex@Base" 0.8.0
 + (c++)"typeinfo for debPackagesIndex@Base" 0.8.0
 + (c++)"typeinfo for pkgAcqIndexDiffs@Base" 0.8.0
 + (c++)"typeinfo for pkgAcqIndexTrans@Base" 0.8.0
 + (c++)"typeinfo for pkgAcquireStatus@Base" 0.8.0
 + (c++)"typeinfo for PreferenceSection@Base" 0.8.0
 + (c++)"typeinfo for pkgPackageManager@Base" 0.8.0
 + (c++)"typeinfo for debSrcRecordParser@Base" 0.8.0
 + (c++)"typeinfo for debVersioningSystem@Base" 0.8.0
 + (c++)"typeinfo for pkgUdevCdromDevices@Base" 0.8.0
 + (c++)"typeinfo for pkgVersioningSystem@Base" 0.8.0
 + (c++)"typeinfo for debTranslationsIndex@Base" 0.8.0
 + (c++)"typeinfo for MMap@Base" 0.8.0
 + (c++)"typeinfo for FileFd@Base" 0.8.0
 + (c++)"typeinfo for Vendor@Base" 0.8.0
 + (c++)"typeinfo for pkgCache@Base" 0.8.0
 + (c++)"typeinfo for IndexCopy@Base" 0.8.0
 + (c++)"typeinfo for debSystem@Base" 0.8.0
 + (c++)"typeinfo for metaIndex@Base" 0.8.0
 + (c++)"typeinfo for pkgDPkgPM@Base" 0.8.0
 + (c++)"typeinfo for pkgPolicy@Base" 0.8.0
 + (c++)"typeinfo for pkgSystem@Base" 0.8.0
 + (c++)"typeinfo for pkgAcquire::Item@Base" 0.8.0
 + (c++)"typeinfo for pkgRecords::Parser@Base" 0.8.0
 + (c++)"typeinfo for pkgDepCache::InRootSetFunc@Base" 0.8.0
 + (c++)"typeinfo for pkgDepCache::DefaultRootSetFunc@Base" 0.8.0
 + (c++)"typeinfo for pkgDepCache::Policy@Base" 0.8.0
 + (c++)"typeinfo for pkgSimulate::Policy@Base" 0.8.0
 + (c++)"typeinfo for pkgIndexFile::Type@Base" 0.8.0
 + (c++)"typeinfo for Configuration::MatchAgainstConfig@Base" 0.8.0
 + (c++)"typeinfo for pkgSourceList::Type@Base" 0.8.0
 + (c++)"typeinfo for pkgSrcRecords::Parser@Base" 0.8.0
 + (c++)"typeinfo for pkgCacheGenerator::ListParser@Base" 0.8.0
 + (c++)"typeinfo for APT::CacheSetHelper@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::DepIterator@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::GrpIterator@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::PkgIterator@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::PrvIterator@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::VerIterator@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::DescIterator@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::PkgFileIterator@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::VerFileIterator@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::DescFileIterator@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Iterator<pkgCache::Dependency, pkgCache::DepIterator>@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Iterator<pkgCache::Description, pkgCache::DescIterator>@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Iterator<pkgCache::PackageFile, pkgCache::PkgFileIterator>@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Iterator<pkgCache::Group, pkgCache::GrpIterator>@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Iterator<pkgCache::Package, pkgCache::PkgIterator>@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Iterator<pkgCache::VerFile, pkgCache::VerFileIterator>@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Iterator<pkgCache::Version, pkgCache::VerIterator>@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Iterator<pkgCache::DescFile, pkgCache::DescFileIterator>@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Iterator<pkgCache::Provides, pkgCache::PrvIterator>@Base" 0.8.0
 + (c++)"typeinfo for pkgCache::Namespace@Base" 0.8.0
 + (c++)"typeinfo name for OpProgress@Base" 0.8.0
 + (c++)"typeinfo name for SourceCopy@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcqFile@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcquire@Base" 0.8.0
 + (c++)"typeinfo name for DynamicMMap@Base" 0.8.0
 + (c++)"typeinfo name for PackageCopy@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcqIndex@Base" 0.8.0
 + (c++)"typeinfo name for pkgDepCache@Base" 0.8.0
 + (c++)"typeinfo name for pkgSimulate@Base" 0.8.0
 + (c++)"typeinfo name for debIFTypePkg@Base" 0.8.0
 + (c++)"typeinfo name for debIFTypeSrc@Base" 0.8.0
 + (c++)"typeinfo name for debSLTypeDeb@Base" 0.8.0
 + (c++)"typeinfo name for indexRecords@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcqMethod@Base" 0.8.0
 + (c++)"typeinfo name for pkgCacheFile@Base" 0.8.0
 + (c++)"typeinfo name for pkgIndexFile@Base" 0.8.0
 + (c++)"typeinfo name for WeakPointable@Base" 0.8.0
 + (c++)"typeinfo name for debListParser@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcqArchive@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcqMetaSig@Base" 0.8.0
 + (c++)"typeinfo name for pkgTagSection@Base" 0.8.0
 + (c++)"typeinfo name for OpTextProgress@Base" 0.8.0
 + (c++)"typeinfo name for debIFTypeTrans@Base" 0.8.0
 + (c++)"typeinfo name for debStatusIndex@Base" 0.8.0
 + (c++)"typeinfo name for debIFTypeStatus@Base" 0.8.0
 + (c++)"typeinfo name for debRecordParser@Base" 0.8.0
 + (c++)"typeinfo name for debReleaseIndex@Base" 0.8.0
 + (c++)"typeinfo name for debSLTypeDebSrc@Base" 0.8.0
 + (c++)"typeinfo name for debSLTypeDebian@Base" 0.8.0
 + (c++)"typeinfo name for debSourcesIndex@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcqDiffIndex@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcqMetaIndex@Base" 0.8.0
 + (c++)"typeinfo name for debPackagesIndex@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcqIndexDiffs@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcqIndexTrans@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcquireStatus@Base" 0.8.0
 + (c++)"typeinfo name for PreferenceSection@Base" 0.8.0
 + (c++)"typeinfo name for pkgPackageManager@Base" 0.8.0
 + (c++)"typeinfo name for debSrcRecordParser@Base" 0.8.0
 + (c++)"typeinfo name for debVersioningSystem@Base" 0.8.0
 + (c++)"typeinfo name for pkgUdevCdromDevices@Base" 0.8.0
 + (c++)"typeinfo name for pkgVersioningSystem@Base" 0.8.0
 + (c++)"typeinfo name for debTranslationsIndex@Base" 0.8.0
 + (c++)"typeinfo name for MMap@Base" 0.8.0
 + (c++)"typeinfo name for FileFd@Base" 0.8.0
 + (c++)"typeinfo name for Vendor@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache@Base" 0.8.0
 + (c++)"typeinfo name for IndexCopy@Base" 0.8.0
 + (c++)"typeinfo name for debSystem@Base" 0.8.0
 + (c++)"typeinfo name for metaIndex@Base" 0.8.0
 + (c++)"typeinfo name for pkgDPkgPM@Base" 0.8.0
 + (c++)"typeinfo name for pkgPolicy@Base" 0.8.0
 + (c++)"typeinfo name for pkgSystem@Base" 0.8.0
 + (c++)"typeinfo name for pkgAcquire::Item@Base" 0.8.0
 + (c++)"typeinfo name for pkgRecords::Parser@Base" 0.8.0
 + (c++)"typeinfo name for pkgDepCache::InRootSetFunc@Base" 0.8.0
 + (c++)"typeinfo name for pkgDepCache::DefaultRootSetFunc@Base" 0.8.0
 + (c++)"typeinfo name for pkgDepCache::Policy@Base" 0.8.0
 + (c++)"typeinfo name for pkgSimulate::Policy@Base" 0.8.0
 + (c++)"typeinfo name for pkgIndexFile::Type@Base" 0.8.0
 + (c++)"typeinfo name for Configuration::MatchAgainstConfig@Base" 0.8.0
 + (c++)"typeinfo name for pkgSourceList::Type@Base" 0.8.0
 + (c++)"typeinfo name for pkgSrcRecords::Parser@Base" 0.8.0
 + (c++)"typeinfo name for pkgCacheGenerator::ListParser@Base" 0.8.0
 + (c++)"typeinfo name for APT::CacheSetHelper@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::DepIterator@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::GrpIterator@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::PkgIterator@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::PrvIterator@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::VerIterator@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::DescIterator@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::PkgFileIterator@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::VerFileIterator@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::DescFileIterator@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Iterator<pkgCache::Dependency, pkgCache::DepIterator>@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Iterator<pkgCache::Description, pkgCache::DescIterator>@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Iterator<pkgCache::PackageFile, pkgCache::PkgFileIterator>@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Iterator<pkgCache::Group, pkgCache::GrpIterator>@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Iterator<pkgCache::Package, pkgCache::PkgIterator>@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Iterator<pkgCache::VerFile, pkgCache::VerFileIterator>@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Iterator<pkgCache::Version, pkgCache::VerIterator>@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Iterator<pkgCache::DescFile, pkgCache::DescFileIterator>@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Iterator<pkgCache::Provides, pkgCache::PrvIterator>@Base" 0.8.0
 + (c++)"typeinfo name for pkgCache::Namespace@Base" 0.8.0
 + (c++)"vtable for OpProgress@Base" 0.8.0
 + (c++)"vtable for SourceCopy@Base" 0.8.0
 + (c++)"vtable for pkgAcqFile@Base" 0.8.0
 + (c++)"vtable for pkgAcquire@Base" 0.8.0
 + (c++)"vtable for DynamicMMap@Base" 0.8.0
 + (c++)"vtable for PackageCopy@Base" 0.8.0
 + (c++)"vtable for pkgAcqIndex@Base" 0.8.0
 + (c++)"vtable for pkgDepCache@Base" 0.8.0
 + (c++)"vtable for pkgSimulate@Base" 0.8.0
 + (c++)"vtable for debIFTypePkg@Base" 0.8.0
 + (c++)"vtable for debIFTypeSrc@Base" 0.8.0
 + (c++)"vtable for debSLTypeDeb@Base" 0.8.0
 + (c++)"vtable for indexRecords@Base" 0.8.0
 + (c++)"vtable for pkgAcqMethod@Base" 0.8.0
 + (c++)"vtable for pkgCacheFile@Base" 0.8.0
 + (c++)"vtable for pkgIndexFile@Base" 0.8.0
 + (c++)"vtable for debListParser@Base" 0.8.0
 + (c++)"vtable for pkgAcqArchive@Base" 0.8.0
 + (c++)"vtable for pkgAcqMetaSig@Base" 0.8.0
 + (c++)"vtable for pkgTagSection@Base" 0.8.0
 + (c++)"vtable for OpTextProgress@Base" 0.8.0
 + (c++)"vtable for debIFTypeTrans@Base" 0.8.0
 + (c++)"vtable for debStatusIndex@Base" 0.8.0
 + (c++)"vtable for debIFTypeStatus@Base" 0.8.0
 + (c++)"vtable for debRecordParser@Base" 0.8.0
 + (c++)"vtable for debReleaseIndex@Base" 0.8.0
 + (c++)"vtable for debSLTypeDebSrc@Base" 0.8.0
 + (c++)"vtable for debSLTypeDebian@Base" 0.8.0
 + (c++)"vtable for debSourcesIndex@Base" 0.8.0
 + (c++)"vtable for pkgAcqDiffIndex@Base" 0.8.0
 + (c++)"vtable for pkgAcqMetaIndex@Base" 0.8.0
 + (c++)"vtable for debPackagesIndex@Base" 0.8.0
 + (c++)"vtable for pkgAcqIndexDiffs@Base" 0.8.0
 + (c++)"vtable for pkgAcqIndexTrans@Base" 0.8.0
 + (c++)"vtable for pkgAcquireStatus@Base" 0.8.0
 + (c++)"vtable for PreferenceSection@Base" 0.8.0
 + (c++)"vtable for pkgPackageManager@Base" 0.8.0
 + (c++)"vtable for debSrcRecordParser@Base" 0.8.0
 + (c++)"vtable for debVersioningSystem@Base" 0.8.0
 + (c++)"vtable for pkgUdevCdromDevices@Base" 0.8.0
 + (c++)"vtable for pkgVersioningSystem@Base" 0.8.0
 + (c++)"vtable for debTranslationsIndex@Base" 0.8.0
 + (c++)"vtable for MMap@Base" 0.8.0
 + (c++)"vtable for FileFd@Base" 0.8.0
 + (c++)"vtable for Vendor@Base" 0.8.0
 + (c++)"vtable for pkgCache@Base" 0.8.0
 + (c++)"vtable for IndexCopy@Base" 0.8.0
 + (c++)"vtable for debSystem@Base" 0.8.0
 + (c++)"vtable for metaIndex@Base" 0.8.0
 + (c++)"vtable for pkgDPkgPM@Base" 0.8.0
 + (c++)"vtable for pkgPolicy@Base" 0.8.0
 + (c++)"vtable for pkgSystem@Base" 0.8.0
 + (c++)"vtable for pkgAcquire::Item@Base" 0.8.0
 + (c++)"vtable for pkgRecords::Parser@Base" 0.8.0
 + (c++)"vtable for pkgDepCache::InRootSetFunc@Base" 0.8.0
 + (c++)"vtable for pkgDepCache::DefaultRootSetFunc@Base" 0.8.0
 + (c++)"vtable for pkgDepCache::Policy@Base" 0.8.0
 + (c++)"vtable for pkgSimulate::Policy@Base" 0.8.0
 + (c++)"vtable for pkgIndexFile::Type@Base" 0.8.0
 + (c++)"vtable for Configuration::MatchAgainstConfig@Base" 0.8.0
 + (c++)"vtable for pkgSourceList::Type@Base" 0.8.0
 + (c++)"vtable for pkgSrcRecords::Parser@Base" 0.8.0
 + (c++)"vtable for pkgCacheGenerator::ListParser@Base" 0.8.0
 + (c++)"vtable for APT::CacheSetHelper@Base" 0.8.0
 + (c++)"vtable for pkgCache::DepIterator@Base" 0.8.0
 + (c++)"vtable for pkgCache::GrpIterator@Base" 0.8.0
 + (c++)"vtable for pkgCache::PkgIterator@Base" 0.8.0
 + (c++)"vtable for pkgCache::PrvIterator@Base" 0.8.0
 + (c++)"vtable for pkgCache::VerIterator@Base" 0.8.0
 + (c++)"vtable for pkgCache::DescIterator@Base" 0.8.0
 + (c++)"vtable for pkgCache::PkgFileIterator@Base" 0.8.0
 + (c++)"vtable for pkgCache::VerFileIterator@Base" 0.8.0
 + (c++)"vtable for pkgCache::DescFileIterator@Base" 0.8.0
 + (c++)"vtable for pkgCache::Iterator<pkgCache::Dependency, pkgCache::DepIterator>@Base" 0.8.0
 + (c++)"vtable for pkgCache::Iterator<pkgCache::Description, pkgCache::DescIterator>@Base" 0.8.0
 + (c++)"vtable for pkgCache::Iterator<pkgCache::PackageFile, pkgCache::PkgFileIterator>@Base" 0.8.0
 + (c++)"vtable for pkgCache::Iterator<pkgCache::Group, pkgCache::GrpIterator>@Base" 0.8.0
 + (c++)"vtable for pkgCache::Iterator<pkgCache::Package, pkgCache::PkgIterator>@Base" 0.8.0
 + (c++)"vtable for pkgCache::Iterator<pkgCache::VerFile, pkgCache::VerFileIterator>@Base" 0.8.0
 + (c++)"vtable for pkgCache::Iterator<pkgCache::Version, pkgCache::VerIterator>@Base" 0.8.0
 + (c++)"vtable for pkgCache::Iterator<pkgCache::DescFile, pkgCache::DescFileIterator>@Base" 0.8.0
 + (c++)"vtable for pkgCache::Iterator<pkgCache::Provides, pkgCache::PrvIterator>@Base" 0.8.0
 + (c++)"non-virtual thunk to pkgDepCache::DefaultRootSetFunc::~DefaultRootSetFunc()@Base" 0.8.0
 + (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, pkgCache::DepIterator)@Base" 0.8.0
 + (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, pkgCache::PkgIterator)@Base" 0.8.0
 + _apt_DebSrcType@Base 0.8.0
 + _apt_DebType@Base 0.8.0
 + _config@Base 0.8.0
 + _system@Base 0.8.0
 + debSys@Base 0.8.0
 + debVS@Base 0.8.0
 + pkgLibVersion@Base 0.8.0
 + pkgVersion@Base 0.8.0
 +### architecture specific: va_list
 + (arch=armel armhf|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, std::__va_list&) const@Base" 0.8.15~exp1
 + (arch=i386 hurd-i386 kfreebsd-i386 ppc64|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, char*&) const@Base" 0.8.15~exp1
 + (arch=hppa ia64 mips mipsel sparc sparc64|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, void*&) const@Base" 0.8.15~exp1
 + (arch=amd64 kfreebsd-amd64 powerpc powerpcspe s390 s390x x32|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, __va_list_tag (&) [1]) const@Base" 0.8.15~exp1
 + (arch=sh4|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, __builtin_va_list&) const@Base" 0.8.15~exp1
 + (arch=alpha|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, __va_list_tag&) const@Base" 0.8.15~exp1
 +### architecture specific: va_list & size_t
 + (arch=i386 hurd-i386 kfreebsd-i386|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, char*&, unsigned int&)@Base" 0.8.11.4
 + (arch=armel armhf|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, std::__va_list&, unsigned int&)@Base" 0.8.11.4
 + (arch=alpha|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __va_list_tag&, unsigned long&)@Base" 0.8.11.4
 + (arch=powerpc powerpcspe x32|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __va_list_tag (&) [1], unsigned int&)@Base" 0.8.11.4
 + (arch=amd64 kfreebsd-amd64 s390 s390x|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __va_list_tag (&) [1], unsigned long&)@Base" 0.8.11.4
 + (arch=hppa mips mipsel sparc|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, void*&, unsigned int&)@Base" 0.8.11.4
 + (arch=ia64 sparc64|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, void*&, unsigned long&)@Base" 0.8.11.4
 + (arch=sh4|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __builtin_va_list&, unsigned int&)@Base" 0.8.11.4
 + (arch=ppc64|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, char*&, unsigned long&)@Base" 0.8.11.4
 + (arch=i386 hurd-i386 kfreebsd-i386|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, char*&, int, unsigned int&)@Base" 0.8.11.4
 + (arch=armel armhf|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, std::__va_list&, int, unsigned int&)@Base" 0.8.11.4
 + (arch=alpha|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __va_list_tag&, int, unsigned long&)@Base" 0.8.11.4
 + (arch=powerpc powerpcspe x32|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __va_list_tag (&) [1], int, unsigned int&)@Base" 0.8.11.4
 + (arch=amd64 kfreebsd-amd64 s390 s390x|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __va_list_tag (&) [1], int, unsigned long&)@Base" 0.8.11.4
 + (arch=hppa mips mipsel sparc|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, void*&, int, unsigned int&)@Base" 0.8.11.4
 + (arch=ia64 sparc64|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, void*&, int, unsigned long&)@Base" 0.8.11.4 1
 + (arch=sh4|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __builtin_va_list&, int, unsigned int&)@Base" 0.8.11.4
 + (arch=ppc64|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, char*&, int, unsigned long&)@Base" 0.8.11.4
 +### architecture specific: size_t
 + (arch=i386 armel armhf hppa hurd-i386 kfreebsd-i386 mips mipsel powerpc powerpcspe sh4 sparc x32|c++)"_strtabexpand(char*, unsigned int)@Base" 0.8.0
 + (arch=alpha amd64 ia64 kfreebsd-amd64 s390 s390x sparc64 ppc64|c++)"_strtabexpand(char*, unsigned long)@Base" 0.8.0
 +### architecture specific: time_t
 + (arch=!x32|c++)"TimeRFC1123(long)@Base" 0.8.0
 + (arch=x32|c++)"TimeRFC1123(long long)@Base" 0.8.0
 + (arch=!x32|c++)"FTPMDTMStrToTime(char const*, long&)@Base" 0.8.0
 + (arch=x32|c++)"FTPMDTMStrToTime(char const*, long long&)@Base" 0.8.0
 + (arch=!x32|c++)"StrToTime(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, long&)@Base" 0.8.0
 + (arch=x32|c++)"StrToTime(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, long long&)@Base" 0.8.0
 + (arch=!x32|c++)"RFC1123StrToTime(char const*, long&)@Base" 0.8.0
 + (arch=x32|c++)"RFC1123StrToTime(char const*, long long&)@Base" 0.8.0
 +###
 + (c++)"Configuration::MatchAgainstConfig::clearPatterns()@Base" 0.8.1
 + (c++)"CreateAPTDirectoryIfNeeded(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.2
 + (c++)"FileFd::FileSize()@Base" 0.8.8
 + (c++)"Base256ToNum(char const*, unsigned long&, unsigned int)@Base" 0.8.11
 + (c++)"pkgDepCache::SetCandidateRelease(pkgCache::VerIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::list<std::pair<pkgCache::VerIterator, pkgCache::VerIterator>, std::allocator<std::pair<pkgCache::VerIterator, pkgCache::VerIterator> > >&)@Base" 0.8.11
 + (c++)"pkgDepCache::SetCandidateRelease(pkgCache::VerIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11
 + (c++)"RealFileExists(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.11
 + (c++)"StripEpoch(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11
 + (c++)"pkgAcqIndex::Init(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11
 + (c++)"pkgAcqIndex::pkgAcqIndex(pkgAcquire*, IndexTarget const*, HashString const&, indexRecords const*)@Base" 0.8.11
 + (c++)"pkgTagSection::FindFlag(unsigned long&, unsigned long, char const*, char const*)@Base" 0.8.11
 + (c++)"pkgAcqSubIndex::ParseIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11
 + (c++)"pkgAcqSubIndex::Custom600Headers()@Base" 0.8.11
 + (c++)"pkgAcqSubIndex::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.11
 + (c++)"pkgAcqSubIndex::DescURI()@Base" 0.8.11
 + (c++)"pkgAcqSubIndex::pkgAcqSubIndex(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashString const&)@Base" 0.8.11
 + (c++)"pkgAcqSubIndex::~pkgAcqSubIndex()@Base" 0.8.11
 + (c++)"pkgAcqMetaClearSig::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.11
 + (c++)"pkgAcqMetaClearSig::pkgAcqMetaClearSig(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<IndexTarget*, std::allocator<IndexTarget*> > const*, indexRecords*)@Base" 0.8.11
 + (c++)"pkgAcqMetaClearSig::~pkgAcqMetaClearSig()@Base" 0.8.11
 + (c++)"pkgAcqIndexTrans::pkgAcqIndexTrans(pkgAcquire*, IndexTarget const*, HashString const&, indexRecords const*)@Base" 0.8.11
 + (c++)"IndexTarget::IsOptional() const@Base" 0.8.11
 + (c++)"IndexTarget::IsSubIndex() const@Base" 0.8.11
 + (c++)"debReleaseIndex::TranslationIndexURI(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.11
 + (c++)"debReleaseIndex::TranslationIndexURISuffix(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.11
 + (c++)"typeinfo for pkgAcqSubIndex@Base" 0.8.11
 + (c++)"typeinfo for pkgAcqMetaClearSig@Base" 0.8.11
 + (c++)"typeinfo name for pkgAcqSubIndex@Base" 0.8.11
 + (c++)"typeinfo name for pkgAcqMetaClearSig@Base" 0.8.11
 + (c++)"vtable for pkgAcqSubIndex@Base" 0.8.11
 + (c++)"vtable for pkgAcqMetaClearSig@Base" 0.8.11
 + (c++)"FindMountPointForDevice(char const*)@Base" 0.8.12
 + (c++)"pkgUdevCdromDevices::ScanForRemovable(bool)@Base" 0.8.12
 + (c++)"APT::Configuration::Compressor::Compressor(char const*, char const*, char const*, char const*, char const*, unsigned short)@Base" 0.8.12
 + (c++)"APT::Configuration::Compressor::~Compressor()@Base" 0.8.12
 + (c++)"APT::Configuration::getCompressors(bool)@Base" 0.8.12
 + (c++)"APT::Configuration::getCompressorExtensions()@Base" 0.8.12
 + (c++)"APT::Configuration::setDefaultConfigurationForCompressors()@Base" 0.8.12
 + (c++)"pkgAcqMetaClearSig::Custom600Headers()@Base" 0.8.13
 + (c++)"debListParser::NewProvidesAllArch(pkgCache::VerIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.13.2
 + (c++)"pkgDepCache::IsModeChangeOk(pkgDepCache::ModeList, pkgCache::PkgIterator const&, unsigned long, bool)@Base" 0.8.13.2
 + (c++)"pkgCache::DepIterator::IsNegative() const@Base" 0.8.15~exp1
 + (c++)"Configuration::CndSet(char const*, int)@Base" 0.8.15.3
 + (c++)"pkgProblemResolver::InstOrNewPolicyBroken(pkgCache::PkgIterator)@Base" 0.8.15.3
 + (c++)"DeEscapeString(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.15.4
 + (c++)"GetModificationTime(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.15.6
 + (c++)"pkgSourceList::GetLastModifiedTime()@Base" 0.8.15.6
 + (c++)"pkgCacheGenerator::NewDepends(pkgCache::PkgIterator&, pkgCache::VerIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int const&, unsigned int const&, unsigned int*&)@Base" 0.8.15.6
 + (c++)"pkgCacheFile::RemoveCaches()@Base" 0.8.15.7
 + (c++)"pkgOrderList::VisitNode(pkgCache::PkgIterator, char const*)@Base" 0.8.15.7
 +### external dependency resolver ###
 + (c++)"edspIFType::~edspIFType()@Base" 0.8.16~exp2
 + (c++)"edspSystem::Initialize(Configuration&)@Base" 0.8.16~exp2
 + (c++)"edspSystem::AddStatusFiles(std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> >&)@Base" 0.8.16~exp2
 + (c++)"edspSystem::ArchiveSupported(char const*)@Base" 0.8.16~exp2
 + (c++)"edspSystem::Lock()@Base" 0.8.16~exp2
 + (c++)"edspSystem::Score(Configuration const&)@Base" 0.8.16~exp2
 + (c++)"edspSystem::UnLock(bool)@Base" 0.8.16~exp2
 + (c++)"edspSystem::edspSystem()@Base" 0.8.16~exp2
 + (c++)"edspSystem::~edspSystem()@Base" 0.8.16~exp2
 + (c++)"edspListParser::NewVersion(pkgCache::VerIterator&)@Base" 0.8.16~exp2
 + (c++)"edspListParser::Description()@Base" 0.8.16~exp2
 + (c++)"edspListParser::ParseStatus(pkgCache::PkgIterator&, pkgCache::VerIterator&)@Base" 0.8.16~exp2
 + (c++)"edspListParser::VersionHash()@Base" 0.8.16~exp2
 + (c++)"edspListParser::Description_md5()@Base" 0.8.16~exp2
 + (c++)"edspListParser::LoadReleaseInfo(pkgCache::PkgFileIterator&, FileFd&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.16~exp2
 + (c++)"edspListParser::DescriptionLanguage()@Base" 0.8.16~exp2
 + (c++)"edspListParser::edspListParser(FileFd*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp2
 + (c++)"edspListParser::~edspListParser()@Base" 0.8.16~exp2
 + (c++)"edspIndex::edspIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.16~exp2
 + (c++)"edspIndex::~edspIndex()@Base" 0.8.16~exp2
 + (c++)"edspIFType::CreatePkgParser(pkgCache::PkgFileIterator) const@Base" 0.8.16~exp2
 + (c++)"edspSystem::CreatePM(pkgDepCache*) const@Base" 0.8.16~exp2
 + (c++)"edspSystem::FindIndex(pkgCache::PkgFileIterator, pkgIndexFile*&) const@Base" 0.8.16~exp2
 + (c++)"edspIndex::Merge(pkgCacheGenerator&, OpProgress*) const@Base" 0.8.16~exp2
 + (c++)"edspIndex::GetType() const@Base" 0.8.16~exp2
 + (c++)"EDSP::WriteError(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, _IO_FILE*)@Base" 0.8.16~exp2
 + (c++)"EDSP::ReadRequest(int, std::list<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::list<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, bool&, bool&, bool&)@Base" 0.8.16~exp2
 + (c++)"EDSP::ApplyRequest(std::list<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::list<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, pkgDepCache&)@Base" 0.8.16~exp2
 + (c++)"EDSP::ReadResponse(int, pkgDepCache&, OpProgress*)@Base" 0.8.16~exp2
 + (c++)"EDSP::WriteRequest(pkgDepCache&, _IO_FILE*, bool, bool, bool, OpProgress*)@Base" 0.8.16~exp2
 + (c++)"EDSP::ExecuteSolver(char const*, int*, int*)@Base" 0.8.16~exp2
 + (c++)"EDSP::WriteProgress(unsigned short, char const*, _IO_FILE*)@Base" 0.8.16~exp2
 + (c++)"EDSP::WriteScenario(pkgDepCache&, _IO_FILE*, OpProgress*)@Base" 0.8.16~exp2
 + (c++)"EDSP::WriteSolution(pkgDepCache&, _IO_FILE*)@Base" 0.8.16~exp2
 + (c++)"EDSP::ResolveExternal(char const*, pkgDepCache&, bool, bool, bool, OpProgress*)@Base" 0.8.16~exp2
 + (c++)"EDSP::DepMap@Base" 0.8.16~exp2
 + (c++)"EDSP::PrioMap@Base" 0.8.16~exp2
 + (c++)"pkgDepCache::Policy::GetPriority(pkgCache::PkgIterator const&)@Base" 0.8.16~exp6
 + (c++)"pkgDepCache::Policy::GetPriority(pkgCache::PkgFileIterator const&)@Base" 0.8.16~exp6
 + (c++)"typeinfo for edspIFType@Base" 0.8.16~exp2
 + (c++)"typeinfo for edspSystem@Base" 0.8.16~exp2
 + (c++)"typeinfo for edspListParser@Base" 0.8.16~exp2
 + (c++)"typeinfo for edspIndex@Base" 0.8.16~exp2
 + (c++)"typeinfo name for edspIFType@Base" 0.8.16~exp2
 + (c++)"typeinfo name for edspSystem@Base" 0.8.16~exp2
 + (c++)"typeinfo name for edspListParser@Base" 0.8.16~exp2
 + (c++)"typeinfo name for edspIndex@Base" 0.8.16~exp2
 + (c++)"vtable for edspIFType@Base" 0.8.16~exp2
 + (c++)"vtable for edspSystem@Base" 0.8.16~exp2
 + (c++)"vtable for edspListParser@Base" 0.8.16~exp2
 + (c++)"vtable for edspIndex@Base" 0.8.16~exp2
 + edspSys@Base 0.8.16~exp2
 +### generalisation of checksums (with lfs) -- mostly api-compatible available (without sha512 in previous versions)
 + (c++)"AddCRC16(unsigned short, void const*, unsigned long long)@Base" 0.8.16~exp2
 + (c++)"MD5Summation::Add(unsigned char const*, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"MD5Summation::Result()@Base" 0.8.16~exp2
 + (c++)"MD5Summation::MD5Summation()@Base" 0.8.16~exp2
 + (c++)"SHA1Summation::SHA1Summation()@Base" 0.8.16~exp2
 + (c++)"SHA1Summation::Add(unsigned char const*, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"SHA1Summation::Result()@Base" 0.8.16~exp2
 + (c++)"SHA256Summation::Add(unsigned char const*, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"SHA512Summation::Add(unsigned char const*, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"debRecordParser::SHA512Hash()@Base" 0.8.16~exp2
 + (c++)"pkgRecords::Parser::SHA512Hash()@Base" 0.8.16~exp6
 + (c++)"Hashes::AddFD(int, unsigned long long, bool, bool, bool, bool)@Base" 0.8.16~exp6
 + (c++)"SummationImplementation::AddFD(int, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"typeinfo for MD5Summation@Base" 0.8.16~exp6
 + (c++)"typeinfo for SHA1Summation@Base" 0.8.16~exp6
 + (c++)"typeinfo for SHA256Summation@Base" 0.8.16~exp6
 + (c++)"typeinfo for SHA512Summation@Base" 0.8.16~exp6
 + (c++)"typeinfo for SHA2SummationBase@Base" 0.8.16~exp6
 + (c++)"typeinfo for SummationImplementation@Base" 0.8.16~exp6
 + (c++)"typeinfo name for MD5Summation@Base" 0.8.16~exp6
 + (c++)"typeinfo name for SHA1Summation@Base" 0.8.16~exp6
 + (c++)"typeinfo name for SHA256Summation@Base" 0.8.16~exp6
 + (c++)"typeinfo name for SHA512Summation@Base" 0.8.16~exp6
 + (c++)"typeinfo name for SHA2SummationBase@Base" 0.8.16~exp6
 + (c++)"typeinfo name for SummationImplementation@Base" 0.8.16~exp6
 + (c++)"vtable for MD5Summation@Base" 0.8.16~exp6
 + (c++)"vtable for SHA1Summation@Base" 0.8.16~exp6
 + (c++)"vtable for SHA256Summation@Base" 0.8.16~exp6
 + (c++)"vtable for SHA512Summation@Base" 0.8.16~exp6
 + (c++)"vtable for SHA2SummationBase@Base" 0.8.16~exp6
 + (c++)"vtable for SummationImplementation@Base" 0.8.16~exp6
 +### large file support - available in older api-compatible versions without lfs ###
 + (c++)"StrToNum(char const*, unsigned long long&, unsigned int, unsigned int)@Base" 0.8.16~exp6
 + (c++)"OpProgress::SubProgress(unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, float)@Base" 0.8.16~exp6
 + (c++)"OpProgress::OverallProgress(unsigned long long, unsigned long long, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp6
 + (c++)"OpProgress::Progress(unsigned long long)@Base" 0.8.16~exp6
 + (c++)"SourceCopy::GetFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@Base" 0.8.16~exp6
 + (c++)"pkgAcqFile::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6
 + (c++)"pkgAcqFile::pkgAcqFile(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp6
 + (c++)"pkgAcquire::UriIterator::~UriIterator()@Base" 0.8.16~exp6
 + (c++)"pkgAcquire::MethodConfig::~MethodConfig()@Base" 0.8.16~exp6
 + (c++)"pkgAcquire::Item::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6
 + (c++)"pkgAcquire::Item::Start(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"pkgRecords::Parser::RecordField(char const*)@Base" 0.8.16~exp6
 + (c++)"pkgTagFile::Jump(pkgTagSection&, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"pkgTagFile::Offset()@Base" 0.8.16~exp6
 + (c++)"pkgTagFile::pkgTagFile(FileFd*, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"DynamicMMap::RawAllocate(unsigned long long, unsigned long)@Base" 0.8.16~exp6
 + (c++)"PackageCopy::GetFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@Base" 0.8.16~exp6
 + (c++)"pkgAcqIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6
 + (c++)"indexRecords::parseSumData(char const*&, char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@Base" 0.8.16~exp6
 + (c++)"pkgAcqArchive::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6
 + (c++)"pkgTagSection::~pkgTagSection()@Base" 0.8.16~exp6
 + (c++)"pkgAcqSubIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6
 + (c++)"debRecordParser::RecordField(char const*)@Base" 0.8.16~exp6
 + (c++)"debReleaseIndex::SetTrusted(bool)@Base" 0.8.16~exp6
 + (c++)"debReleaseIndex::debReleaseIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp6
 + (c++)"pkgAcqMetaIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6
 + (c++)"pkgAcqIndexDiffs::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6
 + (c++)"pkgAcqMetaSig::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6
 + (c++)"pkgAcqDiffIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6
 + (c++)"pkgAcquireStatus::Fetched(unsigned long long, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"PreferenceSection::~PreferenceSection()@Base" 0.8.16~exp6
 + (c++)"pkgCacheGenerator::NewDescription(pkgCache::DescIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashSumValue<128> const&, unsigned int)@Base" 0.8.16~exp6
 + (c++)"pkgProblemResolver::ResolveInternal(bool)@Base" 0.8.16~exp6
 + (c++)"pkgProblemResolver::ResolveByKeepInternal()@Base" 0.8.16~exp6
 + (c++)"FileFd::Read(void*, unsigned long long, unsigned long long*)@Base" 0.8.16~exp6
 + (c++)"FileFd::Seek(unsigned long long)@Base" 0.8.16~exp6
 + (c++)"FileFd::Skip(unsigned long long)@Base" 0.8.16~exp6
 + (c++)"FileFd::Write(void const*, unsigned long long)@Base" 0.8.16~exp6
 + (c++)"FileFd::Truncate(unsigned long long)@Base" 0.8.16~exp6
 + (c++)"pkgPolicy::GetPriority(pkgCache::PkgFileIterator const&)@Base" 0.8.16~exp6
 + (c++)"OptionalIndexTarget::IsOptional() const@Base" 0.8.16~exp6
 + (c++)"typeinfo for pkgTagFile@Base" 0.8.16~exp6
 + (c++)"typeinfo for IndexTarget@Base" 0.8.16~exp6
 + (c++)"typeinfo for pkgSrcRecords@Base" 0.8.16~exp6
 + (c++)"typeinfo for OptionalIndexTarget@Base" 0.8.16~exp6
 + (c++)"typeinfo for pkgAcquire::UriIterator@Base" 0.8.16~exp6
 + (c++)"typeinfo for pkgAcquire::MethodConfig@Base" 0.8.16~exp6
 + (c++)"typeinfo for pkgAcquire::Queue@Base" 0.8.16~exp6
 + (c++)"typeinfo for pkgAcquire::Worker@Base" 0.8.16~exp6
 + (c++)"typeinfo name for pkgTagFile@Base" 0.8.16~exp6
 + (c++)"typeinfo name for IndexTarget@Base" 0.8.16~exp6
 + (c++)"typeinfo name for pkgSrcRecords@Base" 0.8.16~exp6
 + (c++)"typeinfo name for OptionalIndexTarget@Base" 0.8.16~exp6
 + (c++)"typeinfo name for pkgAcquire::UriIterator@Base" 0.8.16~exp6
 + (c++)"typeinfo name for pkgAcquire::MethodConfig@Base" 0.8.16~exp6
 + (c++)"typeinfo name for pkgAcquire::Queue@Base" 0.8.16~exp6
 + (c++)"typeinfo name for pkgAcquire::Worker@Base" 0.8.16~exp6
 + (c++)"vtable for pkgTagFile@Base" 0.8.16~exp6
 + (c++)"vtable for IndexTarget@Base" 0.8.16~exp6
 + (c++)"vtable for pkgSrcRecords@Base" 0.8.16~exp6
 + (c++)"vtable for OptionalIndexTarget@Base" 0.8.16~exp6
 + (c++)"vtable for pkgAcquire::UriIterator@Base" 0.8.16~exp6
 + (c++)"vtable for pkgAcquire::MethodConfig@Base" 0.8.16~exp6
 + (c++)"vtable for pkgAcquire::Queue@Base" 0.8.16~exp6
 + (c++)"vtable for pkgAcquire::Worker@Base" 0.8.16~exp6
 +### remove deprecated parameter
 + (c++)"pkgDepCache::SetCandidateVersion(pkgCache::VerIterator)@Base" 0.8.16~exp6
 + (c++)"pkgDepCache::AddSizes(pkgCache::PkgIterator const&, bool)@Base" 0.8.16~exp6
 + (c++)"pkgDepCache::AddStates(pkgCache::PkgIterator const&, bool)@Base" 0.8.16~exp6
 +### used internally by public interfaces - if you use them directly, you can keep the pieces
 + (c++|optional=internal|regex)"^SHA256_.*@Base$" 0.8.16~exp2
 + (c++|optional=internal|regex)"^SHA384_.*@Base$" 0.8.16~exp2
 + (c++|optional=internal|regex)"^SHA512_.*@Base$" 0.8.16~exp2
 +### orderlist rework: the touched methods are protected
 + (c++)"SigINT(int)@Base" 0.8.16~exp14
 + (c++)"pkgPackageManager::SigINTStop@Base" 0.8.16~exp14
 + (c++)"pkgPackageManager::SmartUnPack(pkgCache::PkgIterator, bool, int)@Base" 0.8.16~exp14
 + (c++)"pkgPackageManager::SmartConfigure(pkgCache::PkgIterator, int)@Base" 0.8.16~exp14
 +### FileFd rework: supporting different on-the-fly (de)compressing needs more parameter (abi), but the api is stable
 + (c++)"FileFd::OpenDescriptor(int, unsigned int, FileFd::CompressMode, bool)@Base" 0.8.16~exp9
 + (c++)"FileFd::OpenDescriptor(int, unsigned int, APT::Configuration::Compressor const&, bool)@Base" 0.8.16~exp9
 + (c++)"FileFd::ModificationTime()@Base" 0.8.16~exp9
 + (c++)"FileFd::Open(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, FileFd::CompressMode, unsigned long)@Base" 0.8.16~exp9
 + (c++)"FileFd::Open(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, APT::Configuration::Compressor const&, unsigned long)@Base" 0.8.16~exp9
 + (c++)"FileFd::ReadLine(char*, unsigned long long)@Base" 0.8.16~exp9
 + (c++)"SummationImplementation::AddFD(FileFd&, unsigned long long)@Base" 0.8.16~exp9
 + (c++)"Hashes::AddFD(FileFd&, unsigned long long, bool, bool, bool, bool)@Base" 0.8.16~exp9
 + (c++|optional=deprecated,previous-inline)"FileFd::gzFd()@Base" 0.8.0
 +### CacheSet rework: making them real containers breaks bigtime the API (for the CacheSetHelper)
 + (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::const_iterator::getPkg() const@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::getConstructor() const@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::empty() const@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::const_iterator::getPkg() const@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::getConstructor() const@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::empty() const@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::empty() const@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator::getVer() const@Base" 0.8.16~exp9
 + (c++)"APT::CacheSetHelper::canNotFindTask(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.16~exp9
 + (c++)"APT::CacheSetHelper::canNotFindRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.16~exp9
 + (c++)"APT::CacheSetHelper::canNotFindAllVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
 + (c++)"APT::CacheSetHelper::canNotFindPackage(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp9
 + (c++)"APT::CacheSetHelper::showTaskSelection(pkgCache::PkgIterator const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp9
 + (c++)"APT::CacheSetHelper::showRegExSelection(pkgCache::PkgIterator const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp9
 + (c++)"APT::CacheSetHelper::showSelectedVersion(pkgCache::PkgIterator const&, pkgCache::VerIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp9
 + (c++)"APT::CacheSetHelper::canNotFindCandInstVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
 + (c++)"APT::CacheSetHelper::canNotFindInstCandVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::setConstructor(APT::PackageContainerInterface::Constructor const&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::clear()@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::insert(pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::setConstructor(APT::PackageContainerInterface::Constructor const&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::clear()@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::insert(pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::clear()@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::insert(pkgCache::VerIterator const&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainerInterface::FromString(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainerInterface::FromCommandLine(APT::PackageContainerInterface*, pkgCacheFile&, char const**, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainerInterface::FromModifierCommandLine(unsigned short&, APT::PackageContainerInterface*, pkgCacheFile&, char const*, std::list<APT::PackageContainerInterface::Modifier, std::allocator<APT::PackageContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainerInterface::FromName(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainerInterface::FromTask(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::PackageContainerInterface::FromRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainerInterface::FromString(APT::VersionContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&, bool)@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainerInterface::FromPackage(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainerInterface::FromCommandLine(APT::VersionContainerInterface*, pkgCacheFile&, char const**, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainerInterface::getCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainerInterface::getInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"APT::VersionContainerInterface::FromModifierCommandLine(unsigned short&, APT::VersionContainerInterface*, pkgCacheFile&, char const*, std::list<APT::VersionContainerInterface::Modifier, std::allocator<APT::VersionContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
 + (c++)"EDSP::WriteLimitedScenario(pkgDepCache&, _IO_FILE*, APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > > const&, OpProgress*)@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::PackageContainerInterface::const_iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::PackageContainerInterface@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::VersionContainerInterface::const_iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo for APT::VersionContainerInterface@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::PackageContainerInterface::const_iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::PackageContainerInterface@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::VersionContainerInterface::const_iterator@Base" 0.8.16~exp9
 + (c++)"typeinfo name for APT::VersionContainerInterface@Base" 0.8.16~exp9
 + (c++)"vtable for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
 + (c++)"vtable for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
 + (c++)"vtable for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
 + (c++)"vtable for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
 + (c++)"vtable for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator@Base" 0.8.16~exp9
 + (c++)"vtable for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@Base" 0.8.16~exp9
 + (c++)"vtable for APT::PackageContainerInterface::const_iterator@Base" 0.8.16~exp9
 + (c++)"vtable for APT::PackageContainerInterface@Base" 0.8.16~exp9
 + (c++)"vtable for APT::VersionContainerInterface::const_iterator@Base" 0.8.16~exp9
 + (c++)"vtable for APT::VersionContainerInterface@Base" 0.8.16~exp9
 +### rework of the packagemanager rework
 + (c++)"APT::Progress::PackageManager::ConffilePrompt(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManager::Error(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
-  (c++|optional=implicit)"HashString::operator=(HashString const&)@Base" 0.8.0
-  (c++|optional=implicit)"HashString::HashString(HashString const&)@Base" 0.8.0
-  (c++|optional=inline)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator std::max_element<APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator, CompareProviders>(APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator, APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator, CompareProviders)@Base" 0.8.0
-  (c++|optional=inline)"pkgCache::VerIterator::ParentPkg() const@Base" 0.8.0
 + (c++)"APT::Progress::PackageManagerFancy::HandleSIGWINCH(int)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerFancy::~PackageManagerFancy()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerFancy::PackageManagerFancy()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerFancy::SetupTerminalScrollArea(int)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerFancy::StatusChanged(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerFancy::Stop()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManager::fork()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManager::GetPulseInterval()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManager::~PackageManager()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::ConffilePrompt(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::Error(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::~PackageManagerProgressDeb822Fd()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::PackageManagerProgressDeb822Fd(int)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::StartDpkg()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::StatusChanged(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::Stop()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::WriteToStatusFd(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressFactory()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressFd::ConffilePrompt(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressFd::Error(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressFd::~PackageManagerProgressFd()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressFd::PackageManagerProgressFd(int)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressFd::StartDpkg()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressFd::StatusChanged(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressFd::Stop()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerProgressFd::WriteToStatusFd(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManager::Pulse()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManager::StartDpkg()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManager::StatusChanged(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManager::Stop()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerText::~PackageManagerText()@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerText::StatusChanged(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1
 + (c++)"APT::String::Strip(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.9.13~exp1
 + (c++)"APT::Upgrade::Upgrade(pkgDepCache&, int)@Base" 0.9.13~exp1
 + (c++)"pkgDPkgPM::BuildPackagesProgressMap()@Base" 0.9.13~exp1
 + (c++)"pkgDPkgPM::DoDpkgStatusFd(int)@Base" 0.9.13~exp1
 + (c++)"pkgDPkgPM::GoNoABIBreak(APT::Progress::PackageManager*)@Base" 0.9.13~exp1
 + (c++)"pkgDPkgPM::ProcessDpkgStatusLine(char*)@Base" 0.9.13~exp1
 + (c++)"pkgDPkgPM::StartPtyMagic()@Base" 0.9.13~exp1
 + (c++)"pkgDPkgPM::StopPtyMagic()@Base" 0.9.13~exp1
 + (c++)"typeinfo for APT::Progress::PackageManager@Base" 0.9.13~exp1
 + (c++)"typeinfo for APT::Progress::PackageManagerFancy@Base" 0.9.13~exp1
 + (c++)"typeinfo for APT::Progress::PackageManagerProgressDeb822Fd@Base" 0.9.13~exp1
 + (c++)"typeinfo for APT::Progress::PackageManagerProgressFd@Base" 0.9.13~exp1
 + (c++)"typeinfo for APT::Progress::PackageManagerText@Base" 0.9.13~exp1
 + (c++)"typeinfo name for APT::Progress::PackageManager@Base" 0.9.13~exp1
 + (c++)"typeinfo name for APT::Progress::PackageManagerFancy@Base" 0.9.13~exp1
 + (c++)"typeinfo name for APT::Progress::PackageManagerProgressDeb822Fd@Base" 0.9.13~exp1
 + (c++)"typeinfo name for APT::Progress::PackageManagerProgressFd@Base" 0.9.13~exp1
 + (c++)"typeinfo name for APT::Progress::PackageManagerText@Base" 0.9.13~exp1
 + (c++)"vtable for APT::Progress::PackageManager@Base" 0.9.13~exp1
 + (c++)"vtable for APT::Progress::PackageManagerFancy@Base" 0.9.13~exp1
 + (c++)"vtable for APT::Progress::PackageManagerProgressDeb822Fd@Base" 0.9.13~exp1
 + (c++)"vtable for APT::Progress::PackageManagerProgressFd@Base" 0.9.13~exp1
 + (c++)"vtable for APT::Progress::PackageManagerText@Base" 0.9.13~exp1
 + (c++)"APT::Progress::PackageManagerFancy::instances@Base" 0.9.14.2
 + (c++)"APT::Progress::PackageManagerFancy::Start(int)@Base" 0.9.14.2
 + (c++)"APT::Progress::PackageManagerFancy::staticSIGWINCH(int)@Base" 0.9.14.2
 + (c++)"APT::Progress::PackageManager::Start(int)@Base" 0.9.14.2
 +### client-side merged pdiffs
 + (c++)"pkgAcqIndexMergeDiffs::DescURI()@Base" 0.9.14.3~exp1
 + (c++)"pkgAcqIndexMergeDiffs::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.9.14.3~exp1
 + (c++)"pkgAcqIndexMergeDiffs::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.9.14.3~exp1
 + (c++)"pkgAcqIndexMergeDiffs::~pkgAcqIndexMergeDiffs()@Base" 0.9.14.3~exp1
 + (c++)"pkgAcqIndexMergeDiffs::pkgAcqIndexMergeDiffs(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashString const&, DiffInfo const&, std::vector<pkgAcqIndexMergeDiffs*, std::allocator<pkgAcqIndexMergeDiffs*> > const*)@Base" 0.9.14.3~exp1
 + (c++)"typeinfo for pkgAcqIndexMergeDiffs@Base" 0.9.14.3~exp1
 + (c++)"typeinfo name for pkgAcqIndexMergeDiffs@Base" 0.9.14.3~exp1
 + (c++)"vtable for pkgAcqIndexMergeDiffs@Base" 0.9.14.3~exp1
 +### deb822 sources.list format
 + (c++)"pkgSourceList::ParseFileDeb822(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.14.3~exp1
 + (c++)"pkgSourceList::ParseFileOldStyle(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.14.3~exp1
 + (c++)"pkgSourceList::Type::ParseStanza(std::vector<metaIndex*, std::allocator<metaIndex*> >&, pkgTagSection&, int, FileFd&)@Base" 0.9.14.3~exp1
 +### mixed stuff
 + (c++)"GetListOfFilesInDir(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp13
 + (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PkgIterator const&) const@Base" 0.8.16~exp10
 + (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PrvIterator const&) const@Base" 0.8.16~exp10
 + (c++)"FileFd::Write(int, void const*, unsigned long long)@Base" 0.8.16~exp14
 + (c++)"pkgTagSection::Exists(char const*)@Base" 0.9.7.9~exp1
 + (c++)"_strrstrip(char*)@Base" 0.9.7.9~exp2
 + (c++)"SplitClearSignedFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd*, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, FileFd*)@Base" 0.9.7.9~exp2
 + (c++)"OpenMaybeClearSignedFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd&)@Base" 0.9.7.9~exp2
 + (c++)"ExecGPGV(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int const&, int*)@Base" 0.9.7.9~exp2
 + (c++)"SigVerify::RunGPGV(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int const&)@Base" 0.9.7.9~exp2
 + (c++)"Configuration::Dump(std::basic_ostream<char, std::char_traits<char> >&, char const*, char const*, bool)@Base" 0.9.3
 + (c++)"AcquireUpdate(pkgAcquire&, int, bool, bool)@Base" 0.9.3
 + (c++)"pkgCache::DepIterator::IsMultiArchImplicit() const@Base" 0.9.6
 + (c++)"pkgCache::PrvIterator::IsMultiArchImplicit() const@Base" 0.9.6
 + (c++)"APT::PackageContainerInterface::FromGroup(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.9.7
 + (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::PackageArchitectureMatchesSpecification(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.9.7
 + (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::~PackageArchitectureMatchesSpecification()@Base" 0.9.7
 + (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(pkgCache::PkgIterator const&)@Base" 0.9.7
 + (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(pkgCache::VerIterator const&)@Base" 0.9.7
 + (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(char const* const&)@Base" 0.9.7
 + (c++)"APT::Configuration::checkLanguage(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@Base" 0.9.7.5
 + (c++)"pkgCdrom::DropTranslation(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@Base" 0.9.7.5
 + (c++)"pkgCache::DepIterator::IsSatisfied(pkgCache::PrvIterator const&) const@Base" 0.9.8
 + (c++)"pkgCache::DepIterator::IsSatisfied(pkgCache::VerIterator const&) const@Base" 0.9.8
 + (c++)"pkgCacheGenerator::NewDepends(pkgCache::PkgIterator&, pkgCache::VerIterator&, unsigned int, unsigned int const&, unsigned int const&, unsigned int*&)@Base" 0.9.8
 + (c++)"pkgCacheGenerator::NewVersion(pkgCache::VerIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsigned long, unsigned long)@Base" 0.9.8
 + (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, GlobalError::Item)@Base" 0.9.9
 + (c++)"pkgDepCache::IsDeleteOkProtectInstallRequests(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.9.9.1
 + (c++)"pkgDepCache::IsInstallOkMultiArchSameVersionSynced(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.9.9.1
 + (c++)"pkgDPkgPM::SendPkgsInfo(_IO_FILE*, unsigned int const&)@Base" 0.9.9.1
 + (c++)"pkgCache::VerIterator::MultiArchType() const@Base" 0.9.9.1
 + (c++)"CommandLine::GetCommand(CommandLine::Dispatch const*, unsigned int, char const* const*)@Base" 0.9.11
 + (c++)"CommandLine::MakeArgs(char, char const*, char const*, unsigned long)@Base" 0.9.11
 + (c++)"Configuration::Clear()@Base" 0.9.11
 + (c++)"Glob(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)@Base" 0.9.11
 + (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::operator()(pkgCache::GrpIterator const&)@Base" 0.9.11
 + (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::operator()(pkgCache::PkgIterator const&)@Base" 0.9.11
 + (c++)"APT::PackageContainerInterface::FromFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.9.11
 + (c++)"pkgTagSection::pkgTagSection()@Base" 0.9.11
 + (c++)"strv_length(char const**)@Base" 0.9.11
 + (c++)"StringSplit(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)@Base" 0.9.11.3
 + (c++)"pkgAcquire::Item::RenameOnError(pkgAcquire::Item::RenameOnErrorState)@Base" 0.9.12
 + (c++)"APT::String::Endswith(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.9.13.1
 + (c++)"ExecFork(std::set<int, std::less<int>, std::allocator<int> >)@Base" 0.9.13.1
 + (c++)"MergeKeepFdsFromConfiguration(std::set<int, std::less<int>, std::allocator<int> >&)@Base" 0.9.13.1
 + (c++)"HashString::FromFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13.1
 + (c++)"HashString::GetHashForFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.9.13.1
 + (c++)"indexRecords::GetSuite() const@Base" 0.9.13.2
 + (c++)"GetTempDir()@Base" 0.9.14.2
 + (c++)"APT::Configuration::getBuildProfiles()@Base" 0.9.16
 + (c++)"APT::Configuration::getBuildProfilesString()@Base" 0.9.16
 + (c++)"Configuration::FindVector(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.9.16
 + (c++)"debListParser::ParseDepends(char const*, char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int&)@Base" 0.9.16
 + (c++)"debListParser::ParseDepends(char const*, char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int&, bool const&)@Base" 0.9.16
 + (c++)"debListParser::ParseDepends(char const*, char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int&, bool const&, bool const&, bool const&)@Base" 0.9.16
 + (c++)"pkgCacheGenerator::ListParser::SameVersion(unsigned short, pkgCache::VerIterator const&)@Base" 0.9.16
 + (c++)"Rename(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.16
++ (c++)"pkgDepCache::IsInstallOkDependenciesSatisfiableByCandidates(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 1.0
++ (c++)"APT::Progress::PackageManagerFancy::GetTerminalSize()@Base" 1.0
++ (c++)"APT::Progress::PackageManagerFancy::GetTextProgressStr(float, int)@Base" 1.0
++ (c++)"pkgCdromStatus::GetOpProgress()@Base" 1.0
++ (c++)"pkgCdromStatus::SetTotal(int)@Base" 1.0
++ (c++)"EDSP::ExecuteSolver(char const*, int*, int*, bool)@Base" 1.0.4
++ (c++)"pkgPackageManager::EarlyRemove(pkgCache::PkgIterator, pkgCache::DepIterator const*)@Base" 1.0.4
++ (c++)"debTranslationsParser::Architecture()@Base" 1.0.4
++ (c++)"debTranslationsParser::~debTranslationsParser()@Base" 1.0.4
++ (c++)"debTranslationsParser::Version()@Base" 1.0.4
++ (c++)"typeinfo for debTranslationsParser@Base" 1.0.4
++ (c++)"typeinfo name for debTranslationsParser@Base" 1.0.4
++ (c++)"vtable for debTranslationsParser@Base" 1.0.4
 +### demangle strangeness - buildd report it as MISSING and as new…
 + (c++)"pkgAcqMetaSig::pkgAcqMetaSig(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<IndexTarget*, std::allocator<IndexTarget*> > const*, indexRecords*)@Base" 0.8.0
 +### gcc-4.6 artefacts
-  (c++|optional=std)"std::basic_string<char, std::char_traits<char>, std::allocator<char> >& std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_replace_dispatch<unsigned char*>(__gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, unsigned char*, unsigned char*, std::__false_type)@Base" 0.8.0
++# (c++|optional=implicit)"HashString::operator=(HashString const&)@Base" 0.8.0
++# (c++|optional=implicit)"HashString::HashString(HashString const&)@Base" 0.8.0
++# (c++|optional=inline)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator std::max_element<APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator, CompareProviders>(APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator, APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator, CompareProviders)@Base" 0.8.0
++# (c++|optional=inline)"pkgCache::VerIterator::ParentPkg() const@Base" 0.8.0
++### gcc-4.8 artefacts
++# (c++|optional=implicit)"debSLTypeDebian::~debSLTypeDebian()@Base" 0.8.0
++### empty destructors included in the .h file
++# (c++|optional=inline)"pkgVersioningSystem::~pkgVersioningSystem()@Base" 0.8.0
++# (c++|optional=inline)"pkgSystem::~pkgSystem()@Base" 0.8.0
++# (c++|optional=inline)"pkgRecords::Parser::~Parser()@Base" 0.8.0
++# (c++|optional=inline)"pkgSrcRecords::Parser::~Parser()@Base" 0.8.0
++# (c++|optional=inline)"pkgIndexFile::Type::~Type()@Base" 0.8.0
++# (c++|optional=inline)"pkgSourceList::Type::~Type()@Base" 0.8.0
++# (c++|optional=inline)"pkgIndexFile::~pkgIndexFile()@Base" 0.8.0
++# (c++|optional=inline)"pkgCacheGenerator::ListParser::~ListParser()@Base" 0.8.0
++# (c++|optional=inline)"pkgAcquireStatus::~pkgAcquireStatus()@Base" 0.8.0
++# (c++|optional=inline)"metaIndex::~metaIndex()@Base" 0.8.0
++# (c++|optional=inline)"IndexCopy::~IndexCopy()@Base" 0.8.0
 +### std library artefacts
 + (c++|regex|optional=std)"^std::vector<DiffInfo, .+@Base$" 0.8.0
 + (c++|regex|optional=std)"^std::vector<.+ >::(vector|push_back|erase|_[^ ]+)\(.+\)( const|)@Base$" 0.8.0
 + (c++|optional=std)"char* std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_construct<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<char> const&, std::forward_iterator_tag)@Base" 0.8.0
 + (c++|optional=std)"char* std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_construct<__gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(__gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<char> const&, std::forward_iterator_tag)@Base" 0.8.0
 + (c++|optional=std)"char* std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag)@Base" 0.8.0
 + (c++|optional=std)"char* std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_construct<char*>(char*, char*, std::allocator<char> const&, std::forward_iterator_tag)@Base" 0.8.0
-  (c++|regex|optional=std)"^(bool|void) std::(operator|sort_heap|make_heap)[^ ]+<.+ >\(.+\)@Base$" 0.8.0
 +### try to ignore std:: template instances
 + (c++|regex|optional=std)"^(void |)std::[^ ]+<.+ >::(_|~).+\(.*\)@Base$" 0.8.0
 + (c++|regex|optional=std)"^std::[^ ]+<.+ >::(append|insert|reserve|operator[^ ]+)\(.*\)@Base$" 0.8.0
 + (c++|regex|optional=std)"^(void |DiffInfo\* |)std::_.*@Base$" 0.8.0
-  (c++|regex|optional=std)"^std::basic_string<.+ >::basic_string<.+>\(.+\)@Base$" 0.8.0
 + (c++|regex|optional=std)"^std::reverse_iterator<.+ > std::__.+@Base$" 0.8.0
 + (c++|regex|optional=std)"^std::basic_string<.+ >\(.+\)@Base$" 0.8.0
 + (c++|regex|optional=std)"^__gnu_cxx::__[^ ]+<.*@Base$" 0.8.0
 + (c++|regex|optional=std)"^typeinfo name for std::iterator<.*>@Base$" 0.8.0
 + (c++|regex|optional=std)"^typeinfo for std::iterator<.*>@Base$" 0.8.0
++ (c++|optional=std)"std::ctype<char>::do_widen(char) const@Base" 1.0.3
diff --combined ftparchive/cachedb.cc
index be54ea62c1128ec83cc4d547c142a1b50922418d,0901492f7246394109e87c3f11c6691580acf715..7770a32449ff41f32614db8869565c27d2362fcd
  #include <apt-pkg/fileutl.h>
  #include <apt-pkg/debfile.h>
  #include <apt-pkg/gpgv.h>
 +#include <apt-pkg/hashes.h>
  
  #include <netinet/in.h>       // htonl, etc
  #include <ctype.h>
  #include <stddef.h>
  #include <sys/stat.h>
 +#include <strings.h>
  
  #include "cachedb.h"
  
  #include <apti18n.h>
                                                                        /*}}}*/
  
+ CacheDB::CacheDB(std::string const &DB) 
+    : Dbp(0), Fd(NULL), DebFile(0)
+ {
+    TmpKey[0]='\0';
+    ReadyDB(DB);
+ };
+ CacheDB::~CacheDB()
+ {
+    ReadyDB();
+    delete DebFile;
+ };
  // CacheDB::ReadyDB - Ready the DB2                                   /*{{{*/
  // ---------------------------------------------------------------------
  /* This opens the DB2 file for caching package information */
@@@ -88,7 -99,7 +101,7 @@@ bool CacheDB::ReadyDB(std::string cons
            return _error->Error(_("Unable to open DB file %s: %s"),DB.c_str(), db_strerror(err));
        }
     }
-    
     DBFile = DB;
     DBLoaded = true;
     return true;
@@@ -174,6 -185,45 +187,45 @@@ bool CacheDB::GetFileStat(bool const &d
     CurStat.mtime = htonl(St.st_mtime);
     CurStat.Flags |= FlSize;
     
+    return true;
+ }
+                                                                       /*}}}*/
+ // CacheDB::GetCurStatCompatOldFormat                                 /*{{{*/
+ // ---------------------------------------------------------------------
+ /* Read the old (32bit FileSize) StateStore format from disk */
+ bool CacheDB::GetCurStatCompatOldFormat()
+ {
+    InitQueryStats();
+    Data.data = &CurStatOldFormat;
+    Data.flags = DB_DBT_USERMEM;
+    Data.ulen = sizeof(CurStatOldFormat);
+    if (Get() == false)
+    {
+       CurStat.Flags = 0;
+    } else {
+       CurStat.Flags = CurStatOldFormat.Flags;
+       CurStat.mtime = CurStatOldFormat.mtime;
+       CurStat.FileSize = CurStatOldFormat.FileSize;
+       memcpy(CurStat.MD5, CurStatOldFormat.MD5, sizeof(CurStat.MD5));
+       memcpy(CurStat.SHA1, CurStatOldFormat.SHA1, sizeof(CurStat.SHA1));
+       memcpy(CurStat.SHA256, CurStatOldFormat.SHA256, sizeof(CurStat.SHA256));
+    }
+    return true;
+ }
+                                                                       /*}}}*/
+ // CacheDB::GetCurStatCompatOldFormat                                 /*{{{*/
+ // ---------------------------------------------------------------------
+ /* Read the new (64bit FileSize) StateStore format from disk */
+ bool CacheDB::GetCurStatCompatNewFormat()
+ {
+    InitQueryStats();
+    Data.data = &CurStat;
+    Data.flags = DB_DBT_USERMEM;
+    Data.ulen = sizeof(CurStat);
+    if (Get() == false)
+    {
+       CurStat.Flags = 0;
+    }
     return true;
  }
                                                                        /*}}}*/
@@@ -187,19 -237,29 +239,29 @@@ bool CacheDB::GetCurStat(
     
     if (DBLoaded)
     {
-       /* First see if there is anything about it
-          in the database */
-       
-       /* Get the flags (and mtime) */
+       // do a first query to just get the size of the data on disk
        InitQueryStats();
-       // Ensure alignment of the returned structure
        Data.data = &CurStat;
-       Data.ulen = sizeof(CurStat);
        Data.flags = DB_DBT_USERMEM;
-       if (Get() == false)
+       Data.ulen = 0;
+       Get();
+       if (Data.size == 0)
        {
-        CurStat.Flags = 0;
-       }      
+          // nothing needs to be done, we just have not data for this deb
+       }
+       // check if the record is written in the old format (32bit filesize)
+       else if(Data.size == sizeof(CurStatOldFormat))
+       {
+          GetCurStatCompatOldFormat();
+       }
+       else if(Data.size == sizeof(CurStat))
+       {
+          GetCurStatCompatNewFormat();
+       } else {
+          return _error->Error("Cache record size mismatch (%ul)", Data.size);
+       }
        CurStat.Flags = ntohl(CurStat.Flags);
        CurStat.FileSize = ntohl(CurStat.FileSize);
     }      
                                                                        /*}}}*/
  // CacheDB::GetFileInfo - Get all the info about the file             /*{{{*/
  // ---------------------------------------------------------------------
 -bool CacheDB::GetFileInfo(std::string const &FileName, bool const &DoControl, 
 -                          bool const &DoContents,
 -                          bool const &GenContentsOnly, 
 -                          bool const &DoSource,
 -                          bool const &DoMD5, bool const &DoSHA1,
 -                          bool const &DoSHA256, bool const &DoSHA512, 
 +bool CacheDB::GetFileInfo(std::string const &FileName, bool const &DoControl, bool const &DoContents,
 +                              bool const &GenContentsOnly, bool const DoSource, unsigned int const DoHashes,
                            bool const &checkMtime)
  {
 -   bool result = true;
     this->FileName = FileName;
  
     if (GetCurStat() == false)
     OldStat = CurStat;
  
     if (GetFileStat(checkMtime) == false)
 -      return false;   
 +      return false;
  
     /* if mtime changed, update CurStat from disk */
     if (checkMtime == true && OldStat.mtime != CurStat.mtime)
        CurStat.Flags = FlSize;
  
     Stats.Bytes += CurStat.FileSize;
 -   Stats.Packages++;
 +   ++Stats.Packages;
  
     if ((DoControl && LoadControl() == false)
 -       || (DoContents && LoadContents(GenContentsOnly) == false)
 -       || (DoSource && LoadSource() == false)
 -       || (DoMD5 && GetMD5(false) == false)
 -       || (DoSHA1 && GetSHA1(false) == false)
 -       || (DoSHA256 && GetSHA256(false) == false)
 -       || (DoSHA512 && GetSHA512(false) == false) )
 +       || (DoContents && LoadContents(GenContentsOnly) == false)
 +       || (DoSource && LoadSource() == false)
 +       || (DoHashes != 0 && GetHashes(false, DoHashes) == false)
 +      )
     {
 -      result = false;
 +      return false;
     }
 -    
 -   return result;
 +
 +   return true;
  }
                                                                        /*}}}*/
 -
 -bool CacheDB::LoadSource()
 +bool CacheDB::LoadSource()                                            /*{{{*/
  {
     // Try to read the control information out of the DB.
     if ((CurStat.Flags & FlSource) == FlSource)
  
     return true;
  }
 -
 +                                                                      /*}}}*/
  // CacheDB::LoadControl - Load Control information                    /*{{{*/
  // ---------------------------------------------------------------------
  /* */
@@@ -339,7 -407,7 +401,7 @@@ bool CacheDB::LoadContents(bool const &
     return true;
  }
                                                                        /*}}}*/
 -
 +// CacheDB::GetHashes - Get the hashs                                 /*{{{*/
  static std::string bytes2hex(uint8_t *bytes, size_t length) {
     char buf[3];
     std::string space;
@@@ -369,59 -437,125 +431,59 @@@ static void hex2bytes(uint8_t *bytes, c
        bytes++;
     } 
  }
 -
 -// CacheDB::GetMD5 - Get the MD5 hash                                 /*{{{*/
 -// ---------------------------------------------------------------------
 -/* */
 -bool CacheDB::GetMD5(bool const &GenOnly)
 +bool CacheDB::GetHashes(bool const GenOnly, unsigned int const DoHashes)
  {
 -   // Try to read the control information out of the DB.
 -   if ((CurStat.Flags & FlMD5) == FlMD5)
 -   {
 -      if (GenOnly == true)
 -       return true;
 -      
 -      MD5Res = bytes2hex(CurStat.MD5, sizeof(CurStat.MD5));
 -       return true;
 -   }
 -   
 -   Stats.MD5Bytes += CurStat.FileSize;
 -       
 -   if (OpenFile() == false)
 -      return false;
 +   unsigned int FlHashes = DoHashes & (Hashes::MD5SUM | Hashes::SHA1SUM | Hashes::SHA256SUM | Hashes::SHA512SUM);
 +   HashesList.clear();
  
 -   MD5Summation MD5;
 -   if (Fd->Seek(0) == false || MD5.AddFD(*Fd, CurStat.FileSize) == false)
 -      return false;
 -   
 -   MD5Res = MD5.Result();
 -   hex2bytes(CurStat.MD5, MD5Res.data(), sizeof(CurStat.MD5));
 -      CurStat.Flags |= FlMD5;
 -   return true;
 -}
 -                                                                      /*}}}*/
 -// CacheDB::GetSHA1 - Get the SHA1 hash                                       /*{{{*/
 -// ---------------------------------------------------------------------
 -/* */
 -bool CacheDB::GetSHA1(bool const &GenOnly)
 -{
 -   // Try to read the control information out of the DB.
 -   if ((CurStat.Flags & FlSHA1) == FlSHA1)
 +   if (FlHashes != 0)
     {
 -      if (GenOnly == true)
 -       return true;
 +      if (OpenFile() == false)
 +       return false;
  
 -      SHA1Res = bytes2hex(CurStat.SHA1, sizeof(CurStat.SHA1));
 -      return true;
 -   }
 -   
 -   Stats.SHA1Bytes += CurStat.FileSize;
 -       
 -   if (OpenFile() == false)
 -      return false;
 +      Hashes hashes;
 +      if (Fd->Seek(0) == false || hashes.AddFD(*Fd, CurStat.FileSize, FlHashes) == false)
 +       return false;
  
 -   SHA1Summation SHA1;
 -   if (Fd->Seek(0) == false || SHA1.AddFD(*Fd, CurStat.FileSize) == false)
 -      return false;
 -   
 -   SHA1Res = SHA1.Result();
 -   hex2bytes(CurStat.SHA1, SHA1Res.data(), sizeof(CurStat.SHA1));
 -   CurStat.Flags |= FlSHA1;
 -   return true;
 -}
 -                                                                      /*}}}*/
 -// CacheDB::GetSHA256 - Get the SHA256 hash                           /*{{{*/
 -// ---------------------------------------------------------------------
 -/* */
 -bool CacheDB::GetSHA256(bool const &GenOnly)
 -{
 -   // Try to read the control information out of the DB.
 -   if ((CurStat.Flags & FlSHA256) == FlSHA256)
 -   {
 -      if (GenOnly == true)
 -       return true;
 -
 -      SHA256Res = bytes2hex(CurStat.SHA256, sizeof(CurStat.SHA256));
 -      return true;
 +      HashStringList hl = hashes.GetHashStringList();
 +      for (HashStringList::const_iterator hs = hl.begin(); hs != hl.end(); ++hs)
 +      {
 +       HashesList.push_back(*hs);
 +       if (strcasecmp(hs->HashType().c_str(), "SHA512") == 0)
 +       {
 +          Stats.SHA512Bytes += CurStat.FileSize;
 +          hex2bytes(CurStat.SHA512, hs->HashValue().data(), sizeof(CurStat.SHA512));
 +          CurStat.Flags |= FlSHA512;
 +       }
 +       else if (strcasecmp(hs->HashType().c_str(), "SHA256") == 0)
 +       {
 +          Stats.SHA256Bytes += CurStat.FileSize;
 +          hex2bytes(CurStat.SHA256, hs->HashValue().data(), sizeof(CurStat.SHA256));
 +          CurStat.Flags |= FlSHA256;
 +       }
 +       else if (strcasecmp(hs->HashType().c_str(), "SHA1") == 0)
 +       {
 +          Stats.SHA1Bytes += CurStat.FileSize;
 +          hex2bytes(CurStat.SHA1, hs->HashValue().data(), sizeof(CurStat.SHA1));
 +          CurStat.Flags |= FlSHA1;
 +       }
 +       else if (strcasecmp(hs->HashType().c_str(), "MD5Sum") == 0)
 +       {
 +          Stats.MD5Bytes += CurStat.FileSize;
 +          hex2bytes(CurStat.MD5, hs->HashValue().data(), sizeof(CurStat.MD5));
 +          CurStat.Flags |= FlMD5;
 +       }
 +       else
 +          return _error->Error("Got unknown unrequested hashtype %s", hs->HashType().c_str());
 +      }
     }
 -   
 -   Stats.SHA256Bytes += CurStat.FileSize;
 -       
 -   if (OpenFile() == false)
 -      return false;
 -
 -   SHA256Summation SHA256;
 -   if (Fd->Seek(0) == false || SHA256.AddFD(*Fd, CurStat.FileSize) == false)
 -      return false;
 -   
 -   SHA256Res = SHA256.Result();
 -   hex2bytes(CurStat.SHA256, SHA256Res.data(), sizeof(CurStat.SHA256));
 -   CurStat.Flags |= FlSHA256;
 -   return true;
 -}
 -                                                                      /*}}}*/
 -// CacheDB::GetSHA256 - Get the SHA256 hash                           /*{{{*/
 -// ---------------------------------------------------------------------
 -/* */
 -bool CacheDB::GetSHA512(bool const &GenOnly)
 -{
 -   // Try to read the control information out of the DB.
 -   if ((CurStat.Flags & FlSHA512) == FlSHA512)
 -   {
 -      if (GenOnly == true)
 -       return true;
 -
 -      SHA512Res = bytes2hex(CurStat.SHA512, sizeof(CurStat.SHA512));
 +   if (GenOnly == true)
        return true;
 -   }
 -   
 -   Stats.SHA512Bytes += CurStat.FileSize;
 -       
 -   if (OpenFile() == false)
 -      return false;
  
 -   SHA512Summation SHA512;
 -   if (Fd->Seek(0) == false || SHA512.AddFD(*Fd, CurStat.FileSize) == false)
 -      return false;
 -   
 -   SHA512Res = SHA512.Result();
 -   hex2bytes(CurStat.SHA512, SHA512Res.data(), sizeof(CurStat.SHA512));
 -   CurStat.Flags |= FlSHA512;
 -   return true;
 +   return HashesList.push_back(HashString("MD5Sum", bytes2hex(CurStat.MD5, sizeof(CurStat.MD5)))) &&
 +      HashesList.push_back(HashString("SHA1", bytes2hex(CurStat.SHA1, sizeof(CurStat.SHA1)))) &&
 +      HashesList.push_back(HashString("SHA256", bytes2hex(CurStat.SHA256, sizeof(CurStat.SHA256)))) &&
 +      HashesList.push_back(HashString("SHA512", bytes2hex(CurStat.SHA512, sizeof(CurStat.SHA512))));
  }
                                                                        /*}}}*/
  // CacheDB::Finish - Write back the cache structure                   /*{{{*/
diff --combined ftparchive/cachedb.h
index 14dba55784c715c9489ca7fc04f837ec537b4ad4,29d710d2c51292d6d43cfbe8a982f5356d1bc30f..b40fd7df72865d1c367a293d922e1e33bd1c72c1
@@@ -12,7 -12,6 +12,7 @@@
  #ifndef CACHEDB_H
  #define CACHEDB_H
  
 +#include <apt-pkg/hashes.h>
  #include <apt-pkg/debfile.h>
  
  #include <db.h>
@@@ -86,19 -85,40 +86,37 @@@ class CacheD
     bool OpenDebFile();
     void CloseDebFile();
  
-    bool GetFileStat(bool const &doStat = false);
+    // GetCurStat needs some compat code, see lp #1274466)
+    bool GetCurStatCompatOldFormat();
+    bool GetCurStatCompatNewFormat();
     bool GetCurStat();
+    bool GetFileStat(bool const &doStat = false);
     bool LoadControl();
     bool LoadContents(bool const &GenOnly);
     bool LoadSource();
 -   bool GetMD5(bool const &GenOnly);
 -   bool GetSHA1(bool const &GenOnly);
 -   bool GetSHA256(bool const &GenOnly);
 -   bool GetSHA512(bool const &GenOnly);
 -   
 +   bool GetHashes(bool const GenOnly, unsigned int const DoHashes);
 +
     // Stat info stored in the DB, Fixed types since it is written to disk.
     enum FlagList {FlControl = (1<<0),FlMD5=(1<<1),FlContents=(1<<2),
                    FlSize=(1<<3), FlSHA1=(1<<4), FlSHA256=(1<<5), 
                    FlSHA512=(1<<6), FlSource=(1<<7),
     };
  
+    // the on-disk format changed (FileSize increased to 64bit) in 
+    // commit 650faab0 which will lead to corruption with old caches
+    struct StatStoreOldFormat
+    {
+       uint32_t Flags;
+       uint32_t mtime;
+       uint32_t FileSize;
+       uint8_t  MD5[16];
+       uint8_t  SHA1[20];
+       uint8_t  SHA256[32];
+    } CurStatOldFormat;
+    // WARNING: this struct is read/written to the DB so do not change the
+    //          layout of the fields (see lp #1274466), only append to it
     struct StatStore
     {
        uint32_t Flags;
     debDebFile::MemControlExtract Control;
     ContentsExtract Contents;
     DscExtract Dsc;
 +   HashStringList HashesList;
  
 -   std::string MD5Res;
 -   std::string SHA1Res;
 -   std::string SHA256Res;
 -   std::string SHA512Res;
 -   
     // Runtime statistics
     struct Stats
     {
                SHA512Bytes(0),Packages(0), Misses(0), DeLinkBytes(0) {};
     } Stats;
     
-    bool ReadyDB(std::string const &DB);
+    bool ReadyDB(std::string const &DB = "");
     inline bool DBFailed() {return Dbp != 0 && DBLoaded == false;};
     inline bool Loaded() {return DBLoaded == true;};
     
     bool SetFile(std::string const &FileName,struct stat St,FileFd *Fd);
  
     // terrible old overloaded interface
 -   bool GetFileInfo(std::string const &FileName, 
 -                    bool const &DoControl, 
 -                    bool const &DoContents, 
 -                    bool const &GenContentsOnly, 
 -                    bool const &DoSource,
 -                  bool const &DoMD5, 
 -                    bool const &DoSHA1, 
 -                    bool const &DoSHA256, 
 -                    bool const &DoSHA512, 
 -                    bool const &checkMtime = false);
 +   bool GetFileInfo(std::string const &FileName,
 +       bool const &DoControl,
 +       bool const &DoContents,
 +       bool const &GenContentsOnly,
 +       bool const DoSource,
 +       unsigned int const DoHashes,
 +       bool const &checkMtime = false);
  
     bool Finish();   
     
     bool Clean();
     
-    CacheDB(std::string const &DB) : Dbp(0), Fd(NULL), DebFile(0) {TmpKey[0]='\0'; ReadyDB(DB);};
-    ~CacheDB() {ReadyDB(std::string()); delete DebFile;};
+    CacheDB(std::string const &DB);
+    ~CacheDB();
  };
      
  #endif
diff --combined ftparchive/writer.h
index c62d4addf91793b1c6182820300db70f0332f1df,d8a10e0bbc578376139842bb63cdd48579bbc5cc..226996475242ece27fabd1b82d594f1223ded0a9
@@@ -13,8 -13,6 +13,8 @@@
  #ifndef WRITER_H
  #define WRITER_H
  
 +#include <apt-pkg/hashes.h>
 +
  #include <string>
  #include <stdio.h>
  #include <iostream>
@@@ -63,7 -61,10 +63,7 @@@ class FTWScanne
     }
     
     public:
 -   bool DoMD5;
 -   bool DoSHA1;
 -   bool DoSHA256;
 -   bool DoSHA512;
 +   unsigned int DoHashes;
  
     unsigned long DeLinkLimit;
     string InternalPrefix;
@@@ -126,8 -127,10 +126,10 @@@ class PackagesWriter : public FTWScanne
        {return Over.ReadExtraOverride(File);};
     virtual bool DoPackage(string FileName);
  
-    PackagesWriter(string const &DB,string const &Overrides,string const &ExtOverrides=string(),
-                 string const &Arch=string());
+    PackagesWriter(string const &DB,
+                   string const &Overrides,
+                   string const &ExtOverrides = "",
+                 string const &Arch = "");
     virtual ~PackagesWriter() {};
  };
  
@@@ -194,14 -197,17 +196,14 @@@ public
     string PathPrefix;
     string DirStrip;
  
 -protected:
     struct CheckSum
     {
 -      string MD5;
 -      string SHA1;
 -      string SHA256;
 -      string SHA512;
 +      HashStringList Hashes;
        // Limited by FileFd::Size()
        unsigned long long size;
        ~CheckSum() {};
     };
 +protected:
     map<string,struct CheckSum> CheckSums;
  };
  
index b469fd3f6e2db6f905dba1fbecfa4f6ecf6a775f,a687dcb3546d20c8d4692f1327d0e89bf8ccfe37..31863af3c416ba6fca9ae11f81c324429f1af78b
@@@ -102,10 -102,10 +102,10 @@@ runapt() 
        local CMD="$1"
        shift
        case $CMD in
 -      sh|aptitude|*/*) ;;
 +      sh|aptitude|*/*|command) ;;
        *) CMD="${BUILDDIRECTORY}/$CMD";;
        esac
 -      MALLOC_PERTURB_=21 MALLOC_CHECK_=2 APT_CONFIG="$(getaptconfig)" LD_LIBRARY_PATH=${BUILDDIRECTORY} $CMD "$@"
 +      MALLOC_PERTURB_=21 MALLOC_CHECK_=2 APT_CONFIG="$(getaptconfig)" LD_LIBRARY_PATH=${LIBRARYPATH} $CMD "$@"
  }
  aptconfig() { runapt apt-config "$@"; }
  aptcache() { runapt apt-cache "$@"; }
@@@ -120,6 -120,7 +120,7 @@@ apthelper() { runapt "${APTHELPERBINDIR
  aptwebserver() { runapt "${APTWEBSERVERBINDIR}/aptwebserver" "$@"; }
  aptitude() { runapt aptitude "$@"; }
  aptextracttemplates() { runapt apt-extracttemplates "$@"; }
+ aptinternalsolver() { runapt "${APTINTERNALSOLVER}" "$@"; }
  
  dpkg() {
        command dpkg --root=${TMPWORKINGDIRECTORY}/rootdir --force-not-root --force-bad-path --log=${TMPWORKINGDIRECTORY}/rootdir/var/log/dpkg.log "$@"
@@@ -128,9 -129,11 +129,9 @@@ dpkgcheckbuilddeps() 
        command dpkg-checkbuilddeps --admindir=${TMPWORKINGDIRECTORY}/rootdir/var/lib/dpkg "$@"
  }
  gdb() {
 -      echo "gdb: run »$*«"
 -      CMD="$1"
 +      local CMD="$1"
        shift
 -
 -      APT_CONFIG=aptconfig.conf LD_LIBRARY_PATH=${LIBRARYPATH} command gdb ${BUILDDIRECTORY}/$CMD --args ${BUILDDIRECTORY}/$CMD "$@"
 +      runapt command gdb --quiet -ex run "${BUILDDIRECTORY}/$CMD" --args "${BUILDDIRECTORY}/$CMD" "$@"
  }
  gpg() {
        # see apt-key for the whole trickery. Setup is done in setupenvironment
@@@ -179,6 -182,7 +180,7 @@@ setupenvironment() 
          METHODSDIR=${APT_INTEGRATION_TESTS_METHODS_DIR:-"${BUILDDIRECTORY}/methods"}
          APTHELPERBINDIR=${APT_INTEGRATION_TESTS_LIBEXEC_DIR:-"${BUILDDIRECTORY}"}
          APTWEBSERVERBINDIR=${APT_INTEGRATION_TESTS_WEBSERVER_BIN_DIR:-"${BUILDDIRECTORY}"}
+         APTINTERNALSOLVER=${APT_INTEGRATION_TESTS_INTERNAL_SOLVER:-"${BUILDDIRECTORY}/apt-internal-solver"}
        test -x "${BUILDDIRECTORY}/apt-get" || msgdie "You need to build tree first"
          # -----
  
        touch var/lib/dpkg/available
        mkdir -p usr/lib/apt
        ln -s ${METHODSDIR} usr/lib/apt/methods
+       if [ "$BUILDDIRECTORY" = "$LIBRARYPATH" ]; then
+               mkdir -p usr/lib/apt/solvers
+               ln -s "${BUILDDIRECTORY}/apt-dump-solver" usr/lib/apt/solvers/dump
+               ln -s "${BUILDDIRECTORY}/apt-internal-solver" usr/lib/apt/solvers/apt
+               echo "Dir::Bin::Solvers \"${TMPWORKINGDIRECTORY}/rootdir/usr/lib/apt/solvers\";" > etc/apt/apt.conf.d/externalsolver.conf
+       fi
          # use the autoremove from the BUILDDIRECTORY if its there, otherwise
          # system
          if [ -e ${BUILDDIRECTORY}/../../debian/apt.conf.autoremove ]; then
        fi
        echo "DPKG::options:: \"--log=${TMPWORKINGDIRECTORY}/rootdir/var/log/dpkg.log\";" >> aptconfig.conf
        echo 'quiet::NoUpdate "true";' >> aptconfig.conf
 +      echo 'quiet::NoStatistic "true";' >> aptconfig.conf
        echo "Acquire::https::CaInfo \"${TESTDIR}/apt.pem\";" > rootdir/etc/apt/apt.conf.d/99https
          echo "Apt::Cmd::Disable-Script-Warning \"1\";" > rootdir/etc/apt/apt.conf.d/apt-binary
        configcompression '.' 'gz' #'bz2' 'lzma' 'xz'
        gpg --quiet --check-trustdb --secret-keyring $SECRETKEYRING --keyring $SECRETKEYRING >/dev/null 2>&1
  
        # cleanup the environment a bit
 -      export PATH="${PATH}:/usr/local/sbin:/usr/sbin:/sbin"
 +        # prefer our apt binaries over the system apt binaries
 +      export PATH="${BUILDDIRECTORY}:${PATH}:/usr/local/sbin:/usr/sbin:/sbin"
        export LC_ALL=C.UTF-8
        unset LANGUAGE APT_CONFIG
        unset GREP_OPTIONS DEB_BUILD_PROFILES