To the best of my knowledge, only the headers in boost/signals2/,
boost/smart_ptr/, and boost/serialize/ contain references to auto_ptr that may
trigger warnings in deal.II headers included in user applications.
_Pragma("GCC diagnostic ignored \"-Wunused-but-set-parameter\"") \
_Pragma("GCC diagnostic ignored \"-Wnested-anon-types\"") \
_Pragma("GCC diagnostic ignored \"-Wunused-private-field\"") \
+_Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") \
_Pragma("GCC diagnostic warning \"-Wpragmas\"")
# define DEAL_II_ENABLE_EXTRA_DIAGNOSTICS \
#include <deal.II/grid/tria_faces.h>
#include <deal.II/grid/tria_levels.h>
+// Ignore deprecation warnings for auto_ptr.
+DEAL_II_DISABLE_EXTRA_DIAGNOSTICS
#include <boost/signals2.hpp>
#include <boost/serialization/vector.hpp>
#include <boost/serialization/map.hpp>
#include <boost/serialization/split_member.hpp>
+DEAL_II_ENABLE_EXTRA_DIAGNOSTICS
#include <vector>
#include <list>
#include <deal.II/lac/vector_memory.h>
#include <deal.II/lac/solver_control.h>
+// Ignore deprecation warnings for auto_ptr.
+DEAL_II_DISABLE_EXTRA_DIAGNOSTICS
#include <boost/signals2.hpp>
+DEAL_II_ENABLE_EXTRA_DIAGNOSTICS
DEAL_II_NAMESPACE_OPEN
In the beginning the Universe was created. This has made a lot of
people very angry and has been widely regarded as a bad move.
Douglas Adams