calm down -Wdelete-non-virtual-dtor warnings

remove -Wno-non-virtual-dtor from makefile (what does it do anyway? -Wdelete-non-virtual-dtor is part of -Wall)
This commit is contained in:
Garux 2019-02-26 19:08:47 +03:00
parent 812a8b6001
commit 1628abfd0f
23 changed files with 48 additions and 47 deletions

View File

@ -114,7 +114,7 @@ CFLAGS_COMMON = -MMD -W -Wall -Wcast-align -Wcast-qual -Wno-unused-parameter -fn
CPPFLAGS_COMMON =
LDFLAGS_COMMON =
LIBS_COMMON =
CXXFLAGS_COMMON = -std=c++11 -Wno-non-virtual-dtor -Wreorder -fno-exceptions -fno-rtti
CXXFLAGS_COMMON = -std=c++11 -Wreorder -fno-exceptions -fno-rtti
ifeq ($(BUILD),debug)
ifeq ($(findstring $(CFLAGS),-g),)

View File

@ -157,7 +157,7 @@ TextInputStream& getInputStream(){
};
/// \brief An ArchiveFile which is stored as a single file on disk.
class DirectoryArchiveFile : public ArchiveFile
class DirectoryArchiveFile final : public ArchiveFile
{
CopiedString m_name;
FileInputStream m_istream;
@ -196,7 +196,7 @@ InputStream& getInputStream(){
};
/// \brief An ArchiveTextFile which is stored as a single file on disk.
class DirectoryArchiveTextFile : public ArchiveTextFile
class DirectoryArchiveTextFile final : public ArchiveTextFile
{
CopiedString m_name;
TextFileInputStream m_inputStream;

View File

@ -308,7 +308,7 @@ void render( RenderStateFlags state ) const {
///
/// - Notifies observers when value changes - value changes to "" on destruction.
/// - Provides undo support through the global undo system.
class KeyValue : public EntityKeyValue
class KeyValue final : public EntityKeyValue
{
typedef UnsortedSet<KeyObserver> KeyObservers;

View File

@ -43,7 +43,7 @@ unsigned int width, height;
RGBAImage( unsigned int _width, unsigned int _height )
: pixels( new RGBAPixel[_width * _height] ), width( _width ), height( _height ){
}
~RGBAImage(){
virtual ~RGBAImage(){
delete[] pixels;
}

View File

@ -24,7 +24,7 @@
#include "iscriplib.h"
class ScriptTokeniser : public Tokeniser
class ScriptTokeniser final : public Tokeniser
{
enum CharType
{

View File

@ -24,7 +24,7 @@
#include "iscriplib.h"
class SimpleTokenWriter : public TokenWriter
class SimpleTokenWriter final : public TokenWriter
{
public:
SimpleTokenWriter( TextOutputStream& ostream )

View File

@ -50,7 +50,7 @@ inline void buffer_findreplace( char* buffer, char find, char replace ){
#include "pak.h"
class PakArchive : public Archive
class PakArchive final : public Archive
{
class PakRecord
{

View File

@ -38,7 +38,7 @@
#include "wad.h"
class WadArchive : public Archive
class WadArchive final : public Archive
{
class wad_record_t
{

View File

@ -32,7 +32,7 @@
#include "archivelib.h"
#include "zlibstream.h"
class DeflatedArchiveFile : public ArchiveFile
class DeflatedArchiveFile final : public ArchiveFile
{
CopiedString m_name;
FileInputStream m_istream;
@ -61,7 +61,7 @@ InputStream& getInputStream(){
}
};
class DeflatedArchiveTextFile : public ArchiveTextFile
class DeflatedArchiveTextFile final : public ArchiveTextFile
{
CopiedString m_name;
FileInputStream m_istream;
@ -91,7 +91,7 @@ TextInputStream& getInputStream(){
#include "fs_filesystem.h"
class ZipArchive : public Archive
class ZipArchive final : public Archive
{
class ZipRecord
{

View File

@ -177,7 +177,7 @@ void unrealise(){
GlobalSkins g_skins;
class Doom3ModelSkinCacheElement : public ModelSkin
class Doom3ModelSkinCacheElement final : public ModelSkin
{
ModuleObservers m_observers;
Doom3ModelSkin* m_skin;
@ -219,7 +219,7 @@ void forEachRemap( const SkinRemapCallback& callback ) const {
}
};
class Doom3ModelSkinCache : public ModelSkinCache, public ModuleObserver
class Doom3ModelSkinCache final : public ModelSkinCache, public ModuleObserver
{
class CreateDoom3ModelSkin
{

View File

@ -67,7 +67,7 @@ PatchCreator& getPatchDef2Doom3(){
}
};
class MapDoom3API : public TypeSystemRef, public MapFormat, public PrimitiveParser
class MapDoom3API final : public TypeSystemRef, public MapFormat, public PrimitiveParser
{
MapDoom3Dependencies& m_dependencies;
public:
@ -138,7 +138,7 @@ MapDoom3Module;
MapDoom3Module g_MapDoom3Module;
class MapQuake4API : public TypeSystemRef, public MapFormat, public PrimitiveParser
class MapQuake4API final : public TypeSystemRef, public MapFormat, public PrimitiveParser
{
MapDoom3Dependencies& m_dependencies;
public:
@ -226,7 +226,7 @@ MapDependencies() :
}
};
class MapQ3API : public TypeSystemRef, public MapFormat, public PrimitiveParser
class MapQ3API final : public TypeSystemRef, public MapFormat, public PrimitiveParser
{
mutable bool m_formatDetected;
public:
@ -308,7 +308,7 @@ typedef SingletonModule<MapQ3API, MapDependencies> MapQ3Module;
MapQ3Module g_MapQ3Module;
class MapQ1API : public TypeSystemRef, public MapFormat, public PrimitiveParser
class MapQ1API final : public TypeSystemRef, public MapFormat, public PrimitiveParser
{
mutable bool m_formatDetected;
public:
@ -385,7 +385,7 @@ typedef SingletonModule<MapQ1API, MapDependencies> MapQ1Module;
MapQ1Module g_MapQ1Module;
class MapHalfLifeAPI : public TypeSystemRef, public MapFormat, public PrimitiveParser
class MapHalfLifeAPI final : public TypeSystemRef, public MapFormat, public PrimitiveParser
{
public:
typedef MapFormat Type;
@ -428,7 +428,7 @@ typedef SingletonModule<MapHalfLifeAPI, MapDependencies> MapHalfLifeModule;
MapHalfLifeModule g_MapHalfLifeModule;
class MapQ2API : public TypeSystemRef, public MapFormat, public PrimitiveParser
class MapQ2API final : public TypeSystemRef, public MapFormat, public PrimitiveParser
{
mutable bool m_formatDetected;
public:
@ -632,7 +632,7 @@ void VMF_Read( scene::Node& root, Tokeniser& tokeniser, EntityCreator& entityTab
globalOutputStream() << g_vmf_brushes << " brushes\n";
}
class MapVMFAPI : public TypeSystemRef, public MapFormat
class MapVMFAPI final : public TypeSystemRef, public MapFormat
{
public:
typedef MapFormat Type;

View File

@ -61,7 +61,7 @@ PatchCreator& getPatchDef2Doom3(){
}
};
class MapXMLAPI : public TypeSystemRef, public MapFormat
class MapXMLAPI final : public TypeSystemRef, public MapFormat
{
public:
typedef MapFormat Type;

View File

@ -72,7 +72,7 @@ inline void parseTextureName( CopiedString& name, const char* token ){
}
// generic renderable triangle surface
class Surface :
class Surface final :
public OpenGLRenderable
{
public:

View File

@ -65,7 +65,7 @@ void forEachLight( const RendererLightCallback& callback ) const {
}
};
class PicoSurface :
class PicoSurface final :
public OpenGLRenderable
{
AABB m_aabb_local;

View File

@ -40,7 +40,7 @@
#include "vfspk3.h"
class DirectoryArchive : public Archive
class DirectoryArchive final : public Archive
{
CopiedString m_root;
public:

View File

@ -176,7 +176,7 @@ virtual XMLElementParser& pushElement( const XMLElement& element ) = 0;
virtual void popElement( const char* name ) = 0;
};
class VariableStringXMLConstructor : public XMLElementParser
class VariableStringXMLConstructor final : public XMLElementParser
{
StringBuffer m_buffer;
VariableString& m_variableString;
@ -198,7 +198,7 @@ void popElement( const char* name ){
}
};
class ConditionalXMLConstructor : public XMLElementParser
class ConditionalXMLConstructor final : public XMLElementParser
{
StringBuffer m_buffer;
Conditional& m_conditional;
@ -220,7 +220,7 @@ void popElement( const char* name ){
}
};
class ToolXMLConstructor : public XMLElementParser
class ToolXMLConstructor final : public XMLElementParser
{
StringBuffer m_buffer;
Tool& m_tool;
@ -266,7 +266,7 @@ void flush(){
typedef VariableString BuildCommand;
typedef std::list<BuildCommand> Build;
class BuildXMLConstructor : public XMLElementParser
class BuildXMLConstructor final : public XMLElementParser
{
VariableStringXMLConstructor* m_variableString;
Build& m_build;

View File

@ -246,7 +246,7 @@ typedef ImportExport<GtkComboBox, int, IntComboImport, IntComboExport> IntComboI
template<typename FirstArgument>
class CallbackDialogData : public DLG_DATA
class CallbackDialogData final : public DLG_DATA
{
public:
typedef Callback1<FirstArgument> ImportCallback;

View File

@ -126,7 +126,7 @@ virtual void update() = 0;
virtual void release() = 0;
};
class BooleanAttribute : public EntityAttribute
class BooleanAttribute final : public EntityAttribute
{
CopiedString m_key;
GtkCheckButton* m_check;
@ -191,6 +191,7 @@ StringAttribute( const char* key ) :
m_entry = entry;
m_nonModal.connect( m_entry );
}
virtual ~StringAttribute() = default;
GtkWidget* getWidget() const {
return GTK_WIDGET( m_entry );
}
@ -236,7 +237,7 @@ TextureAttribute( const char* key ) : StringAttribute( key ){
};
class ColorAttribute : public EntityAttribute
class ColorAttribute final : public EntityAttribute
{
CopiedString m_key;
BrowsedPathEntry m_entry;
@ -280,7 +281,7 @@ typedef MemberCaller1<ColorAttribute, const BrowsedPathEntry::SetPathCallback&,
};
class ModelAttribute : public EntityAttribute
class ModelAttribute final : public EntityAttribute
{
CopiedString m_key;
BrowsedPathEntry m_entry;
@ -343,7 +344,7 @@ const char* browse_sound( GtkWidget* parent ){
return filename;
}
class SoundAttribute : public EntityAttribute
class SoundAttribute final : public EntityAttribute
{
CopiedString m_key;
BrowsedPathEntry m_entry;
@ -408,7 +409,7 @@ public:
}
};
class AngleAttribute : public EntityAttribute
class AngleAttribute final : public EntityAttribute
{
CopiedString m_key;
GtkEntry* m_entry;
@ -468,7 +469,7 @@ typedef const char* String;
const String buttons[] = { "up", "down", "yaw" };
}
class DirectionAttribute : public EntityAttribute
class DirectionAttribute final : public EntityAttribute
{
CopiedString m_key;
GtkEntry* m_entry;
@ -572,7 +573,7 @@ AnglesEntry() : m_roll( 0 ), m_pitch( 0 ), m_yaw( 0 ){
}
};
class AnglesAttribute : public EntityAttribute
class AnglesAttribute final : public EntityAttribute
{
CopiedString m_key;
AnglesEntry m_angles;
@ -670,7 +671,7 @@ Vector3Entry() : m_x( 0 ), m_y( 0 ), m_z( 0 ){
}
};
class Vector3Attribute : public EntityAttribute
class Vector3Attribute final : public EntityAttribute
{
CopiedString m_key;
Vector3Entry m_vector3;
@ -770,7 +771,7 @@ void setActive( GtkComboBox* combo, int value ){
}
};
class ListAttribute : public EntityAttribute
class ListAttribute final : public EntityAttribute
{
CopiedString m_key;
GtkComboBox* m_combo;

View File

@ -76,7 +76,7 @@ IGL2DWindow* Highlight();
void DropHighlight() { }
};
class CPointMsg : public ISAXHandler, public IGL2DWindow
class CPointMsg final : public ISAXHandler, public IGL2DWindow
{
enum { POINT_MESSAGE, POINT_POINT } EPointState;
StringOutputStream message;
@ -109,7 +109,7 @@ void DecRef() {
void Draw2D( VIEWTYPE vt );
};
class CWindingMsg : public ISAXHandler, public IGL2DWindow
class CWindingMsg final : public ISAXHandler, public IGL2DWindow
{
enum { WINDING_MESSAGE, WINDING_WINDING } EPointState;
StringOutputStream message;

View File

@ -935,7 +935,7 @@ std::size_t count() const {
}
};
class OpenGLShader : public Shader
class OpenGLShader final : public Shader
{
typedef std::list<OpenGLStateBucket*> Passes;
Passes m_passes;
@ -1140,7 +1140,7 @@ inline void setFogState( const OpenGLFogState& state ){
#define DEBUG_SHADERS 0
void OpenGLState_apply( const OpenGLState& self, OpenGLState& current, unsigned int globalstate );
class OpenGLShaderCache : public ShaderCache, public TexturesCacheObserver, public ModuleObserver
class OpenGLShaderCache final : public ShaderCache, public TexturesCacheObserver, public ModuleObserver
{
class CreateOpenGLShader
{

View File

@ -65,7 +65,7 @@ TypeId getTypeId( const char* name ){
}
};
class CompiledGraph : public scene::Graph, public scene::Instantiable::Observer
class CompiledGraph final : public scene::Graph, public scene::Instantiable::Observer
{
typedef std::map<PathConstReference, scene::Instance*> InstanceMap;

View File

@ -4667,7 +4667,7 @@ public:
// RadiantSelectionSystem
class RadiantSelectionSystem :
class RadiantSelectionSystem final :
public SelectionSystem,
public Translatable,
public Rotatable,
@ -6271,7 +6271,7 @@ void highlight( DeviceVector position ){
class RadiantWindowObserver : public SelectionSystemWindowObserver
class RadiantWindowObserver final : public SelectionSystemWindowObserver
{
DeviceVector m_epsilon;
ModifierFlags m_state;

View File

@ -377,7 +377,7 @@ hash_t operator()( const TextureKey& key ) const {
#define DEBUG_TEXTURES 0
class TexturesMap : public TexturesCache
class TexturesMap final : public TexturesCache
{
class TextureConstructor
{