Skip to content

Commit

Permalink
Shut up clang warnings
Browse files Browse the repository at this point in the history
  • Loading branch information
edolstra committed Sep 17, 2015
1 parent 3d91bfc commit 4ba6bc1
Show file tree
Hide file tree
Showing 9 changed files with 72 additions and 67 deletions.
3 changes: 2 additions & 1 deletion local.mk
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ dist-files += configure config.h.in nix.spec

clean-files += Makefile.config

GLOBAL_CXXFLAGS += -I . -I src -I src/libutil -I src/libstore -I src/libmain -I src/libexpr
GLOBAL_CXXFLAGS += -I . -I src -I src/libutil -I src/libstore -I src/libmain -I src/libexpr \
-Wno-unneeded-internal-declaration

This comment has been minimized.

Copy link
@zimbatm

zimbatm Dec 10, 2016

Member

This breaks backward-compatibility with GCC 4.8. This breaks the ubuntu package for example: https://hydra.nixos.org/build/38640065/log


$(foreach i, config.h $(call rwildcard, src/lib*, *.hh) src/nix-store/serve-protocol.hh, \
$(eval $(call install-file-in, $(i), $(includedir)/nix, 0644)))
Expand Down
4 changes: 3 additions & 1 deletion perl/local.mk
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,9 @@ ifeq ($(perlbindings), yes)

Store_CXXFLAGS = \
-I$(shell $(perl) -e 'use Config; print $$Config{archlibexp};')/CORE \
-D_FILE_OFFSET_BITS=64 -Wno-unused-variable -Wno-literal-suffix -Wno-reserved-user-defined-literal
-D_FILE_OFFSET_BITS=64 \
-Wno-unknown-warning-option -Wno-unused-variable -Wno-literal-suffix \
-Wno-reserved-user-defined-literal -Wno-duplicate-decl-specifier -Wno-pointer-bool-conversion

Store_LIBS = libstore libutil

Expand Down
2 changes: 2 additions & 0 deletions src/libexpr/local.mk
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ libexpr_DIR := $(d)

libexpr_SOURCES := $(wildcard $(d)/*.cc) $(d)/lexer-tab.cc $(d)/parser-tab.cc

libexpr_CXXFLAGS := -Wno-deprecated-register

libexpr_LIBS = libutil libstore libformat

libexpr_LDFLAGS = -ldl
Expand Down
2 changes: 1 addition & 1 deletion src/libmain/shared.hh
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ extern volatile ::sig_atomic_t blockInt;

string showBytes(unsigned long long bytes);

class GCResults;
struct GCResults;

struct PrintFreed
{
Expand Down
8 changes: 4 additions & 4 deletions src/libstore/build.cc
Original file line number Diff line number Diff line change
Expand Up @@ -806,7 +806,7 @@ class DerivationGoal : public Goal

void timedOut() override;

string key()
string key() override
{
/* Ensure that derivations get built in order of their name,
i.e. a derivation named "aardvark" always comes before
Expand All @@ -815,7 +815,7 @@ class DerivationGoal : public Goal
return "b$" + storePathToName(drvPath) + "$" + drvPath;
}

void work();
void work() override;

Path getDrvPath()
{
Expand Down Expand Up @@ -863,8 +863,8 @@ class DerivationGoal : public Goal
void deleteTmpDir(bool force);

/* Callback used by the worker to write to the log. */
void handleChildOutput(int fd, const string & data);
void handleEOF(int fd);
void handleChildOutput(int fd, const string & data) override;
void handleEOF(int fd) override;

/* Return the set of (in)valid paths. */
PathSet checkPathValidity(bool returnValid, bool checkHash);
Expand Down
58 changes: 29 additions & 29 deletions src/libstore/local-store.hh
Original file line number Diff line number Diff line change
Expand Up @@ -98,41 +98,41 @@ public:

/* Implementations of abstract store API methods. */

bool isValidPath(const Path & path);
bool isValidPath(const Path & path) override;

PathSet queryValidPaths(const PathSet & paths);
PathSet queryValidPaths(const PathSet & paths) override;

PathSet queryAllValidPaths();
PathSet queryAllValidPaths() override;

ValidPathInfo queryPathInfo(const Path & path);
ValidPathInfo queryPathInfo(const Path & path) override;

Hash queryPathHash(const Path & path);
Hash queryPathHash(const Path & path) override;

void queryReferences(const Path & path, PathSet & references);
void queryReferences(const Path & path, PathSet & references) override;

void queryReferrers(const Path & path, PathSet & referrers);
void queryReferrers(const Path & path, PathSet & referrers) override;

Path queryDeriver(const Path & path);
Path queryDeriver(const Path & path) override;

PathSet queryValidDerivers(const Path & path);
PathSet queryValidDerivers(const Path & path) override;

PathSet queryDerivationOutputs(const Path & path);
PathSet queryDerivationOutputs(const Path & path) override;

StringSet queryDerivationOutputNames(const Path & path);
StringSet queryDerivationOutputNames(const Path & path) override;

Path queryPathFromHashPart(const string & hashPart);
Path queryPathFromHashPart(const string & hashPart) override;

PathSet querySubstitutablePaths(const PathSet & paths);
PathSet querySubstitutablePaths(const PathSet & paths) override;

void querySubstitutablePathInfos(const Path & substituter,
PathSet & paths, SubstitutablePathInfos & infos);

void querySubstitutablePathInfos(const PathSet & paths,
SubstitutablePathInfos & infos);
SubstitutablePathInfos & infos) override;

Path addToStore(const string & name, const Path & srcPath,
bool recursive = true, HashType hashAlgo = htSHA256,
PathFilter & filter = defaultPathFilter, bool repair = false);
PathFilter & filter = defaultPathFilter, bool repair = false) override;

/* Like addToStore(), but the contents of the path are contained
in `dump', which is either a NAR serialisation (if recursive ==
Expand All @@ -142,43 +142,43 @@ public:
bool recursive = true, HashType hashAlgo = htSHA256, bool repair = false);

Path addTextToStore(const string & name, const string & s,
const PathSet & references, bool repair = false);
const PathSet & references, bool repair = false) override;

void exportPath(const Path & path, bool sign,
Sink & sink);
Sink & sink) override;

Paths importPaths(bool requireSignature, Source & source);
Paths importPaths(bool requireSignature, Source & source) override;

void buildPaths(const PathSet & paths, BuildMode buildMode);
void buildPaths(const PathSet & paths, BuildMode buildMode) override;

BuildResult buildDerivation(const Path & drvPath, const BasicDerivation & drv,
BuildMode buildMode) override;

void ensurePath(const Path & path);
void ensurePath(const Path & path) override;

void addTempRoot(const Path & path);
void addTempRoot(const Path & path) override;

void addIndirectRoot(const Path & path);
void addIndirectRoot(const Path & path) override;

void syncWithGC();
void syncWithGC() override;

Roots findRoots();
Roots findRoots() override;

void collectGarbage(const GCOptions & options, GCResults & results);
void collectGarbage(const GCOptions & options, GCResults & results) override;

/* Optimise the disk space usage of the Nix store by hard-linking
files with the same contents. */
void optimiseStore(OptimiseStats & stats);

/* Generic variant of the above method. */
void optimiseStore();
void optimiseStore() override;

/* Optimise a single store path. */
void optimisePath(const Path & path);

/* Check the integrity of the Nix store. Returns true if errors
remain. */
bool verifyStore(bool checkContents, bool repair);
bool verifyStore(bool checkContents, bool repair) override;

/* Register the validity of a path, i.e., that `path' exists, that
the paths referenced by it exists, and in the case of an output
Expand All @@ -197,9 +197,9 @@ public:
/* Query whether `path' previously failed to build. */
bool hasPathFailed(const Path & path);

PathSet queryFailedPaths();
PathSet queryFailedPaths() override;

void clearFailedPaths(const PathSet & paths);
void clearFailedPaths(const PathSet & paths) override;

void vacuumDB();

Expand Down
59 changes: 30 additions & 29 deletions src/libstore/remote-store.hh
Original file line number Diff line number Diff line change
Expand Up @@ -24,71 +24,72 @@ public:

/* Implementations of abstract store API methods. */

bool isValidPath(const Path & path);
bool isValidPath(const Path & path) override;

PathSet queryValidPaths(const PathSet & paths);
PathSet queryValidPaths(const PathSet & paths) override;

PathSet queryAllValidPaths();
PathSet queryAllValidPaths() override;

ValidPathInfo queryPathInfo(const Path & path);
ValidPathInfo queryPathInfo(const Path & path) override;

Hash queryPathHash(const Path & path);
Hash queryPathHash(const Path & path) override;

void queryReferences(const Path & path, PathSet & references);
void queryReferences(const Path & path, PathSet & references) override;

void queryReferrers(const Path & path, PathSet & referrers);
void queryReferrers(const Path & path, PathSet & referrers) override;

Path queryDeriver(const Path & path);
Path queryDeriver(const Path & path) override;

PathSet queryValidDerivers(const Path & path);
PathSet queryValidDerivers(const Path & path) override;

PathSet queryDerivationOutputs(const Path & path);
PathSet queryDerivationOutputs(const Path & path) override;

StringSet queryDerivationOutputNames(const Path & path);
StringSet queryDerivationOutputNames(const Path & path) override;

Path queryPathFromHashPart(const string & hashPart);
Path queryPathFromHashPart(const string & hashPart) override;

PathSet querySubstitutablePaths(const PathSet & paths);
PathSet querySubstitutablePaths(const PathSet & paths) override;

void querySubstitutablePathInfos(const PathSet & paths,
SubstitutablePathInfos & infos);
SubstitutablePathInfos & infos) override;

Path addToStore(const string & name, const Path & srcPath,
bool recursive = true, HashType hashAlgo = htSHA256,
PathFilter & filter = defaultPathFilter, bool repair = false);
PathFilter & filter = defaultPathFilter, bool repair = false) override;

Path addTextToStore(const string & name, const string & s,
const PathSet & references, bool repair = false);
const PathSet & references, bool repair = false) override;

void exportPath(const Path & path, bool sign,
Sink & sink);
Sink & sink) override;

Paths importPaths(bool requireSignature, Source & source);
Paths importPaths(bool requireSignature, Source & source) override;

void buildPaths(const PathSet & paths, BuildMode buildMode);
void buildPaths(const PathSet & paths, BuildMode buildMode) override;

BuildResult buildDerivation(const Path & drvPath, const BasicDerivation & drv,
BuildMode buildMode) override;

void ensurePath(const Path & path);
void ensurePath(const Path & path) override;

void addTempRoot(const Path & path);
void addTempRoot(const Path & path) override;

void addIndirectRoot(const Path & path);
void addIndirectRoot(const Path & path) override;

void syncWithGC();
void syncWithGC() override;

Roots findRoots();
Roots findRoots() override;

void collectGarbage(const GCOptions & options, GCResults & results);
void collectGarbage(const GCOptions & options, GCResults & results) override;

PathSet queryFailedPaths();
PathSet queryFailedPaths() override;

void clearFailedPaths(const PathSet & paths);
void clearFailedPaths(const PathSet & paths) override;

void optimiseStore();
void optimiseStore() override;

bool verifyStore(bool checkContents, bool repair) override;

bool verifyStore(bool checkContents, bool repair);
private:
AutoCloseFD fdSocket;
FdSink to;
Expand Down
1 change: 0 additions & 1 deletion src/libutil/hash.cc
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,6 @@ const string base32Chars = "0123456789abcdfghijklmnpqrsvwxyz";

string printHash32(const Hash & hash)
{
Hash hash2(hash);
unsigned int len = hashLength32(hash);

string s;
Expand Down
2 changes: 1 addition & 1 deletion src/nix-env/nix-env.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1277,7 +1277,7 @@ static void opDeleteGenerations(Globals & globals, Strings opFlags, Strings opAr
std::set<unsigned int> gens;
for (auto & i : opArgs) {
unsigned int n;
if (!string2Int(i, n) || n < 0)
if (!string2Int(i, n))
throw UsageError(format("invalid generation number ‘%1%’") % i);
gens.insert(n);
}
Expand Down

0 comments on commit 4ba6bc1

Please sign in to comment.