Build system: enable the dangling else warning (-Wdangling-else)

Adapt the code accordingly.
mr#2134
Sébastien Villemot 2023-04-11 14:46:04 +02:00
parent c56e7cef51
commit 90a408e3c3
No known key found for this signature in database
GPG Key ID: 2CECE9350ECEBE4A
7 changed files with 91 additions and 63 deletions

View File

@ -1,6 +1,6 @@
/* /*
* Copyright © 2005 Ondra Kamenik * Copyright © 2005 Ondra Kamenik
* Copyright © 2019-2021 Dynare Team * Copyright © 2019-2023 Dynare Team
* *
* This file is part of Dynare. * This file is part of Dynare.
* *
@ -40,10 +40,12 @@ ZAuxContainer::itype
ZAuxContainer::getType(int i, const Symmetry &s) const ZAuxContainer::getType(int i, const Symmetry &s) const
{ {
if (i == 0) if (i == 0)
if (s[2] > 0) {
return itype::zero; if (s[2] > 0)
else return itype::zero;
return itype::matrix; else
return itype::matrix;
}
return itype::zero; return itype::zero;
} }

View File

@ -1,6 +1,6 @@
/* /*
* Copyright © 2005 Ondra Kamenik * Copyright © 2005 Ondra Kamenik
* Copyright © 2019-2022 Dynare Team * Copyright © 2019-2023 Dynare Team
* *
* This file is part of Dynare. * This file is part of Dynare.
* *
@ -285,19 +285,23 @@ typename GXContainer<_Ttype>::itype
GXContainer<_Ttype>::getType(int i, const Symmetry &s) const GXContainer<_Ttype>::getType(int i, const Symmetry &s) const
{ {
if (i == 0) if (i == 0)
if (s[2] > 0) {
return itype::zero; if (s[2] > 0)
else return itype::zero;
return itype::matrix; else
return itype::matrix;
}
if (i == 1) if (i == 1)
return itype::zero; return itype::zero;
if (i == 2) if (i == 2)
return itype::zero; return itype::zero;
if (i == 3) if (i == 3)
if (s == Symmetry{0, 0, 0, 1}) {
return itype::unit; if (s == Symmetry{0, 0, 0, 1})
else return itype::unit;
return itype::zero; else
return itype::zero;
}
KORD_RAISE("Wrong stack index in GXContainer::getType"); KORD_RAISE("Wrong stack index in GXContainer::getType");
} }
@ -331,25 +335,33 @@ typename ZXContainer<_Ttype>::itype
ZXContainer<_Ttype>::getType(int i, const Symmetry &s) const ZXContainer<_Ttype>::getType(int i, const Symmetry &s) const
{ {
if (i == 0) if (i == 0)
if (s[2] > 0) {
return itype::zero; if (s[2] > 0)
else return itype::zero;
return itype::matrix; else
return itype::matrix;
}
if (i == 1) if (i == 1)
if (s[2] > 0) {
return itype::zero; if (s[2] > 0)
else return itype::zero;
return itype::matrix; else
return itype::matrix;
}
if (i == 2) if (i == 2)
if (s == Symmetry{1, 0, 0, 0}) {
return itype::unit; if (s == Symmetry{1, 0, 0, 0})
else return itype::unit;
return itype::zero; else
return itype::zero;
}
if (i == 3) if (i == 3)
if (s == Symmetry{0, 1, 0, 0}) {
return itype::unit; if (s == Symmetry{0, 1, 0, 0})
else return itype::unit;
return itype::zero; else
return itype::zero;
}
KORD_RAISE("Wrong stack index in ZXContainer::getType"); KORD_RAISE("Wrong stack index in ZXContainer::getType");
} }

View File

@ -1,6 +1,6 @@
/* /*
* Copyright © 2004 Ondra Kamenik * Copyright © 2004 Ondra Kamenik
* Copyright © 2019 Dynare Team * Copyright © 2019-2023 Dynare Team
* *
* This file is part of Dynare. * This file is part of Dynare.
* *
@ -365,10 +365,12 @@ public:
getType(int i, const Symmetry &s) const override getType(int i, const Symmetry &s) const override
{ {
if (i==0) if (i==0)
if (s[2] > 0) {
return itype::zero; if (s[2] > 0)
else return itype::zero;
return itype::matrix; else
return itype::matrix;
}
TL_RAISE("Wrong stack index in XContainer::getType"); TL_RAISE("Wrong stack index in XContainer::getType");
} }
@ -433,20 +435,26 @@ public:
if (i == 0) if (i == 0)
return itype::matrix; return itype::matrix;
if (i == 1) if (i == 1)
if (s[2] > 0) {
return itype::zero; if (s[2] > 0)
else return itype::zero;
return itype::matrix; else
return itype::matrix;
}
if (i == 2) if (i == 2)
if (s == Symmetry{1, 0, 0, 0}) {
return itype::unit; if (s == Symmetry{1, 0, 0, 0})
else return itype::unit;
return itype::zero; else
return itype::zero;
}
if (i == 3) if (i == 3)
if (s == Symmetry{0, 1, 0, 0}) {
return itype::unit; if (s == Symmetry{0, 1, 0, 0})
else return itype::unit;
return itype::zero; else
return itype::zero;
}
TL_RAISE("Wrong stack index in ZContainer::getType"); TL_RAISE("Wrong stack index in ZContainer::getType");
} }
@ -512,22 +520,28 @@ public:
getType(int i, const Symmetry &s) const override getType(int i, const Symmetry &s) const override
{ {
if (i == 0) if (i == 0)
if (s[2] > 0 || s == Symmetry{0, 0, 0, 1}) {
return itype::zero; if (s[2] > 0 || s == Symmetry{0, 0, 0, 1})
else return itype::zero;
return itype::matrix; else
return itype::matrix;
}
if (i == 1) if (i == 1)
if (s == Symmetry{0, 0, 1, 0}) {
return itype::unit; if (s == Symmetry{0, 0, 1, 0})
else return itype::unit;
return itype::zero; else
return itype::zero;
}
if (i == 2) if (i == 2)
return itype::zero; return itype::zero;
if (i == 3) if (i == 3)
if (s == Symmetry{0, 0, 0, 1}) {
return itype::unit; if (s == Symmetry{0, 0, 0, 1})
else return itype::unit;
return itype::zero; else
return itype::zero;
}
TL_RAISE("Wrong stack index in GContainer::getType"); TL_RAISE("Wrong stack index in GContainer::getType");
} }

View File

@ -280,7 +280,7 @@ License: GFDL-NIV-1.3+
Files: dynare++/* Files: dynare++/*
Copyright: 2004-2011 Ondra Kamenik Copyright: 2004-2011 Ondra Kamenik
2019-2022 Dynare Team 2019-2023 Dynare Team
License: GPL-3+ License: GPL-3+
Files: m4/ax_compare_version.m4 Files: m4/ax_compare_version.m4

View File

@ -9,7 +9,7 @@ DEFS += -DMEXEXT=\"$(MEXEXT)\"
AM_CFLAGS = $(MATLAB_CFLAGS) -Wall -Wno-parentheses # TODO: use same warnings as C++ AM_CFLAGS = $(MATLAB_CFLAGS) -Wall -Wno-parentheses # TODO: use same warnings as C++
AM_FCFLAGS = $(MATLAB_FCFLAGS) -Wall -Wimplicit-interface AM_FCFLAGS = $(MATLAB_FCFLAGS) -Wall -Wimplicit-interface
AM_CXXFLAGS = -std=gnu++20 $(MATLAB_CXXFLAGS) -Wall -Wno-dangling-else -Wextra -Wold-style-cast AM_CXXFLAGS = -std=gnu++20 $(MATLAB_CXXFLAGS) -Wall -Wextra -Wold-style-cast
AM_LDFLAGS = $(MATLAB_LDFLAGS) AM_LDFLAGS = $(MATLAB_LDFLAGS)
LIBS += $(MATLAB_LIBS) LIBS += $(MATLAB_LIBS)

View File

@ -5,7 +5,7 @@ DEFS += -DMEXEXT=\".mex\"
AM_CFLAGS = $(shell $(MKOCTFILE) -p CPICFLAG) -Wall -Wno-parentheses # TODO: use same warnings as C++ AM_CFLAGS = $(shell $(MKOCTFILE) -p CPICFLAG) -Wall -Wno-parentheses # TODO: use same warnings as C++
AM_FCFLAGS = $(shell $(MKOCTFILE) -p FPICFLAG) -Wall -Wimplicit-interface AM_FCFLAGS = $(shell $(MKOCTFILE) -p FPICFLAG) -Wall -Wimplicit-interface
AM_CXXFLAGS = -std=gnu++20 $(shell $(MKOCTFILE) -p CXXPICFLAG) -Wall -Wno-dangling-else -Wextra -Wold-style-cast AM_CXXFLAGS = -std=gnu++20 $(shell $(MKOCTFILE) -p CXXPICFLAG) -Wall -Wextra -Wold-style-cast
AM_LDFLAGS = $(shell $(MKOCTFILE) -p DL_LDFLAGS) AM_LDFLAGS = $(shell $(MKOCTFILE) -p DL_LDFLAGS)
# See the comments in configure.ac # See the comments in configure.ac

@ -1 +1 @@
Subproject commit 6caf8c6c59b0bf25a8154711c6db7817470b4f6f Subproject commit 1b7b70ec934a66ac6f7844dce670f17ba0b561a0