[pragma] More
diff --git a/src/hb.hh b/src/hb.hh
index 9c17bd7..660f797 100644
--- a/src/hb.hh
+++ b/src/hb.hh
@@ -36,17 +36,23 @@
* - Warnings whose scope can be expanded in future compiler versions shall
* be declared as "warning". Otherwise, either ignored or error.
*/
+
/* Setup */
#pragma GCC diagnostic warning "-Wall"
#pragma GCC diagnostic warning "-Wextra"
#pragma GCC diagnostic ignored "-Wpragmas"
+#pragma GCC diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wunknown-warning-option"
//#pragma GCC diagnostic warning "-Weverything"
+
/* Error. Should never happen. */
+#pragma clang diagnostic error "-Wc++11-narrowing"
+#pragma clang diagnostic error "-Wstring-conversion"
+#pragma clang diagnostic error "-Wtautological-overlap-compare"
#pragma GCC diagnostic error "-Wcast-align"
#pragma GCC diagnostic error "-Wformat-security"
-#pragma GCC diagnostic error "-Winit-self"
#pragma GCC diagnostic error "-Wimplicit-function-declaration"
+#pragma GCC diagnostic error "-Winit-self"
#pragma GCC diagnostic error "-Wmissing-braces"
#pragma GCC diagnostic error "-Wmissing-declarations"
#pragma GCC diagnostic error "-Wmissing-prototypes"
@@ -56,9 +62,16 @@
#pragma GCC diagnostic error "-Wredundant-decls"
#pragma GCC diagnostic error "-Wstrict-prototypes"
#pragma GCC diagnostic error "-Wswitch-enum"
+#pragma GCC diagnostic error "-Wunneeded-internal-declaration"
#pragma GCC diagnostic error "-Wunused"
+#pragma GCC diagnostic error "-Wunused-local-typedefs"
+#pragma GCC diagnostic error "-Wunused-value"
+#pragma GCC diagnostic error "-Wunused-variable"
#pragma GCC diagnostic error "-Wwrite-strings"
+
/* Warning. To be investigated if happens. */
+#pragma clang diagnostic warning "-Wignored-pragma-optimize"
+#pragma GCC diagnostic warning "-Wbuiltin-macro-redefined"
#pragma GCC diagnostic warning "-Wdisabled-optimization"
#pragma GCC diagnostic warning "-Wformat=2"
#pragma GCC diagnostic warning "-Wlogical-op"
@@ -66,12 +79,14 @@
#pragma GCC diagnostic warning "-Wsign-compare"
#pragma GCC diagnostic warning "-Wundef"
#pragma GCC diagnostic warning "-Wvla"
+
/* Ignored currently, but should be fixed at some point. */
#pragma GCC diagnostic ignored "-Wconversion" // TODO fix
#pragma GCC diagnostic ignored "-Wformat-signedness" // TODO fix
#pragma GCC diagnostic ignored "-Wshadow" // TODO fix
#pragma GCC diagnostic ignored "-Wunsafe-loop-optimizations" // TODO fix
#pragma GCC diagnostic ignored "-Wunused-parameter" // TODO fix
+
/* Ignored intentionally. */
#pragma clang diagnostic ignored "-Wclass-memaccess"
#pragma GCC diagnostic ignored "-Wformat-nonliteral"