Browse Source

Fixes parameter warnings in a way that works across all supported compilers while retaining full functionally and warnings if used in the future

David Wimsey 11 years ago
parent
commit
336b8f8d69
78 changed files with 547 additions and 140 deletions
  1. 2 2
      Include/Rocket/Controls/ElementTabSet.h
  2. 4 2
      Include/Rocket/Core/EventListener.h
  3. 54 1
      Include/Rocket/Core/Platform.h
  4. 8 2
      Include/Rocket/Core/StringBase.inl
  5. 12 2
      Samples/basic/customlog/src/main.cpp
  6. 12 2
      Samples/basic/directx/src/main.cpp
  7. 12 2
      Samples/basic/drag/src/main.cpp
  8. 12 2
      Samples/basic/loaddocument/src/main.cpp
  9. 12 2
      Samples/basic/treeview/src/main.cpp
  10. 8 3
      Samples/invaders/src/DecoratorDefender.cpp
  11. 3 1
      Samples/invaders/src/DecoratorInstancerDefender.cpp
  12. 3 1
      Samples/invaders/src/DecoratorInstancerStarfield.cpp
  13. 3 1
      Samples/invaders/src/DecoratorStarfield.cpp
  14. 3 1
      Samples/invaders/src/Event.cpp
  15. 7 2
      Samples/pyinvaders/src/DecoratorDefender.cpp
  16. 3 1
      Samples/pyinvaders/src/DecoratorInstancerDefender.cpp
  17. 3 1
      Samples/pyinvaders/src/DecoratorStarfield.cpp
  18. 12 2
      Samples/pyinvaders/src/main.cpp
  19. 15 4
      Samples/shell/src/ShellRenderInterfaceOpenGL.cpp
  20. 8 3
      Samples/tutorial/datagrid/src/DecoratorDefender.cpp
  21. 3 1
      Samples/tutorial/datagrid/src/DecoratorInstancerDefender.cpp
  22. 12 2
      Samples/tutorial/datagrid/src/main.cpp
  23. 8 3
      Samples/tutorial/datagrid_tree/src/DecoratorDefender.cpp
  24. 3 1
      Samples/tutorial/datagrid_tree/src/DecoratorInstancerDefender.cpp
  25. 12 2
      Samples/tutorial/datagrid_tree/src/main.cpp
  26. 12 2
      Samples/tutorial/template/src/main.cpp
  27. 12 2
      Samples/tutorial/tutorial_drag/src/main.cpp
  28. 4 1
      Source/Controls/DataQuery.cpp
  29. 20 5
      Source/Controls/DataSourceListener.cpp
  30. 3 1
      Source/Controls/ElementDataGridRow.cpp
  31. 18 4
      Source/Controls/ElementFormControlDataSelect.cpp
  32. 6 2
      Source/Controls/ElementTabSet.cpp
  33. 5 2
      Source/Controls/InputType.cpp
  34. 3 1
      Source/Controls/InputTypeButton.cpp
  35. 3 1
      Source/Controls/InputTypeSubmit.cpp
  36. 2 1
      Source/Controls/InputTypeText.cpp
  37. 4 1
      Source/Controls/XMLNodeHandlerDataGrid.cpp
  38. 4 1
      Source/Controls/XMLNodeHandlerTabSet.cpp
  39. 4 1
      Source/Controls/XMLNodeHandlerTextArea.cpp
  40. 7 3
      Source/Core/BaseXMLParser.cpp
  41. 8 3
      Source/Core/DecoratorNone.cpp
  42. 4 1
      Source/Core/DecoratorNoneInstancer.cpp
  43. 3 1
      Source/Core/DecoratorTiledBoxInstancer.cpp
  44. 3 1
      Source/Core/DecoratorTiledHorizontalInstancer.cpp
  45. 3 1
      Source/Core/DecoratorTiledImageInstancer.cpp
  46. 3 1
      Source/Core/DecoratorTiledVerticalInstancer.cpp
  47. 3 1
      Source/Core/Element.cpp
  48. 3 1
      Source/Core/ElementDefinition.cpp
  49. 3 1
      Source/Core/ElementDocument.cpp
  50. 10 2
      Source/Core/FontEffect.cpp
  51. 10 2
      Source/Core/FontEffectNone.cpp
  52. 4 1
      Source/Core/FontEffectNoneInstancer.cpp
  53. 3 1
      Source/Core/FontEffectOutline.cpp
  54. 3 1
      Source/Core/FontEffectOutlineInstancer.cpp
  55. 4 1
      Source/Core/FontEffectShadow.cpp
  56. 3 1
      Source/Core/FontEffectShadowInstancer.cpp
  57. 3 2
      Source/Core/LayoutEngine.cpp
  58. 5 1
      Source/Core/LayoutInlineBox.cpp
  59. 2 1
      Source/Core/LayoutInlineBoxText.cpp
  60. 15 7
      Source/Core/Plugin.cpp
  61. 3 1
      Source/Core/PropertyParserColour.cpp
  62. 3 1
      Source/Core/PropertyParserNumber.cpp
  63. 3 1
      Source/Core/PropertyParserString.cpp
  64. 24 6
      Source/Core/RenderInterface.cpp
  65. 7 2
      Source/Core/Stream.cpp
  66. 7 2
      Source/Core/StreamFile.cpp
  67. 4 1
      Source/Core/StyleSheetNodeSelectorEmpty.cpp
  68. 4 1
      Source/Core/StyleSheetNodeSelectorFirstChild.cpp
  69. 4 1
      Source/Core/StyleSheetNodeSelectorFirstOfType.cpp
  70. 4 1
      Source/Core/StyleSheetNodeSelectorLastChild.cpp
  71. 4 1
      Source/Core/StyleSheetNodeSelectorLastOfType.cpp
  72. 4 1
      Source/Core/StyleSheetNodeSelectorOnlyChild.cpp
  73. 4 1
      Source/Core/StyleSheetNodeSelectorOnlyOfType.cpp
  74. 8 3
      Source/Core/SystemInterface.cpp
  75. 12 4
      Source/Core/WidgetSliderScroll.cpp
  76. 6 3
      Source/Core/XMLNodeHandlerBody.cpp
  77. 4 1
      Source/Core/XMLNodeHandlerDefault.cpp
  78. 6 4
      Source/Core/XMLNodeHandlerTemplate.cpp

+ 2 - 2
Include/Rocket/Controls/ElementTabSet.h

@@ -85,10 +85,10 @@ public:
 	void ProcessEvent(Core::Event& event);
 
 	/// Called when the listener has been attached to a new Element
-	void OnAttach(Element* ROCKET_UNUSED(element));
+	void OnAttach(Element* element);
 
 	/// Called when the listener has been detached from a Element
-	void OnDetach(Element* ROCKET_UNUSED(element));
+	void OnDetach(Element* element);
 
 protected:
 	// Catch child add/removes so we can correctly set up their events.

+ 4 - 2
Include/Rocket/Core/EventListener.h

@@ -52,13 +52,15 @@ public:
 	virtual void ProcessEvent(Event& event) = 0;
 
 	/// Called when the listener has been attached to a new Element
-	virtual void OnAttach(Element* ROCKET_UNUSED(element))
+	virtual void OnAttach(Element* ROCKET_UNUSED_PARAMETER(element))
 	{
+		ROCKET_UNUSED(element);
 	}
 
 	/// Called when the listener has been detached from a Element
-	virtual void OnDetach(Element* ROCKET_UNUSED(element))
+	virtual void OnDetach(Element* ROCKET_UNUSED_PARAMETER(element))
 	{
+		ROCKET_UNUSED(element);
 	}
 };
 

+ 54 - 1
Include/Rocket/Core/Platform.h

@@ -73,6 +73,59 @@
 	#endif
 #endif
 
-#define ROCKET_UNUSED(x)
+// Wraps unused variables in methods or functions to avoid compiler warnings.  This should
+// be wrapped around the name of all parameters that are wrapped with ROCKET_UNUSED_PARAMETER
+// to cover warnings generated by non-llvm/gcc style compilers that can't be covered with
+// ROCKET_UNUSED_PARAMETER
+#if defined __llvm__
+//#  define ROCKET_UNUSED(x) UNUSED_ ## x __unused
+#  define ROCKET_UNUSED(x)
+#elif defined __GNUC__
+//#  define ROCKET_UNUSED(x) UNUSED_ ## x __attribute__((__unused__))
+#  define ROCKET_UNUSED(x)
+#else
+#  define ROCKET_UNUSED(x) (void)(UNUSED_ ## x)
+#endif
+
+// Wraps unused parameter names in method or function declarations.  When used, the first lines
+// of the function should contain a matching ROCKET_UNUSED call with the name of the function
+// as well to cover compilers with no-op ROCKET_UNUSED_PARAMETER macros.
+#if defined __llvm__
+#  define ROCKET_UNUSED_PARAMETER(x) UNUSED_ ## x __attribute__((unused))
+#elif defined __GNUC__
+#  define ROCKET_UNUSED_PARAMETER(x) UNUSED_ ## x __attribute__((__unused__))
+#else
+#  define ROCKET_UNUSED_PARAMETER(x) UNUSED_ ## x
+#endif
+
+// ROCKET_UNUSED_ASSERT_PARAMETERS wraps method parameters which are not used in the method other than
+// by a ROCKET_ASSERT check.  This safely deals with debug versus release mode configurations
+// and will warn if the parameter starts being used when compiled with GCC
+#ifdef ROCKET_DEBUG
+   // In this case, the parameter is used by a ROCKET_ASSERT test, so we just pass through as is
+#  define ROCKET_UNUSED_ASSERT_PARAMETER(x) x
+#  define ROCKET_UNUSED_ASSERT(x)
+#else
+   // If not in DEBUG builds, this parameter is unused, mark it as such
+#  if defined __llvm__
+#    define ROCKET_UNUSED_ASSERT_PARAMETER(x) UNUSED_ ## x __attribute__((unused))
+#    define ROCKET_UNUSED_ASSERT(x)
+#  elif defined __GNUC__
+#    define ROCKET_UNUSED_ASSERT_PARAMETER(x) UNUSED_ ## x __attribute__((__unused__))
+#    define ROCKET_UNUSED_ASSERT(x)
+#  else
+#    define ROCKET_UNUSED_ASSERT_PARAMETER(x) UNUSED_ ## x
+#    define ROCKET_UNUSED_ASSERT(x) (void)(UNUSED_ ## x)
+#  endif
+#endif
+
+// Wraps functions which are not referenced or exported to avoid compiler warnings
+#if defined __llvm__
+#  define ROCKET_UNUSED_FUNCTION(x) __attribute__((unused)) UNUSED_ ## x
+#elif defined __GNUC__
+#  define ROCKET_UNUSED_FUNCTION(x) __attribute__((__unused__)) UNUSED_ ## x
+#else
+#  define ROCKET_UNUSED_FUNCTION(x) UNUSED_ ## x
+#endif
 
 #endif

+ 8 - 2
Include/Rocket/Core/StringBase.inl

@@ -74,8 +74,11 @@ StringBase< T >::StringBase(size_type count, const T character) : value((T*)loca
 }
 
 template< typename T >
-StringBase< T >::StringBase(size_type ROCKET_UNUSED(max_length), const T* ROCKET_UNUSED(fmt), ...) : value((T*)local_buffer), buffer_size(LOCAL_BUFFER_SIZE), length(0), hash(0)
+StringBase< T >::StringBase(size_type ROCKET_UNUSED_PARAMETER(max_length), const T* ROCKET_UNUSED_PARAMETER(fmt), ...) : value((T*)local_buffer), buffer_size(LOCAL_BUFFER_SIZE), length(0), hash(0)
 {
+	ROCKET_UNUSED(max_length);
+	ROCKET_UNUSED(fmt);
+
 	value[0] = 0;
 	// Can't implement this at the base level, requires template specialisation
 	ROCKET_ERRORMSG("Not implemented.");
@@ -304,8 +307,11 @@ void StringBase< T >::Erase(size_type index, size_type count)
 }
 
 template< typename T >
-int StringBase< T >::FormatString(size_type ROCKET_UNUSED(max_length), const T* ROCKET_UNUSED(fmt), ...)
+int StringBase< T >::FormatString(size_type ROCKET_UNUSED_PARAMETER(max_length), const T* ROCKET_UNUSED_PARAMETER(fmt), ...)
 {
+	ROCKET_UNUSED(max_length);
+	ROCKET_UNUSED(fmt);
+
 	ROCKET_ERRORMSG("Not implemented.");
 	return -1;
 }

+ 12 - 2
Samples/basic/customlog/src/main.cpp

@@ -45,11 +45,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED(instance_handle), HINSTANCE ROCKET_UNUSED(previous_instance_handle), char* ROCKET_UNUSED(command_line), int ROCKET_UNUSED(command_show))
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int ROCKET_UNUSED(argc), char** ROCKET_UNUSED(argv))
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	// Generic OS initialisation, creates a window and attaches OpenGL.
 	if (!Shell::Initialise("../Samples/basic/customlog/") ||
 		!Shell::OpenWindow("Custom File Handler Sample", true))

+ 12 - 2
Samples/basic/directx/src/main.cpp

@@ -125,11 +125,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED(instance_handle), HINSTANCE ROCKET_UNUSED(previous_instance_handle), char* ROCKET_UNUSED(command_line), int ROCKET_UNUSED(command_show))
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int ROCKET_UNUSED(argc), char** ROCKET_UNUSED(argv))
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	// Generic OS initialisation, creates a window and does not attach OpenGL.
 	if (!Shell::Initialise("../Samples/basic/directx/") ||
 		!Shell::OpenWindow("DirectX Sample", false))

+ 12 - 2
Samples/basic/drag/src/main.cpp

@@ -45,11 +45,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED(instance_handle), HINSTANCE ROCKET_UNUSED(previous_instance_handle), char* ROCKET_UNUSED(command_line), int ROCKET_UNUSED(command_show))
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int ROCKET_UNUSED(argc), char** ROCKET_UNUSED(argv))
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	// Generic OS initialisation, creates a window and attaches OpenGL.
 	if (!Shell::Initialise("../Samples/basic/drag/") ||
 		!Shell::OpenWindow("Drag Sample", true))

+ 12 - 2
Samples/basic/loaddocument/src/main.cpp

@@ -44,11 +44,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED(instance_handle), HINSTANCE ROCKET_UNUSED(previous_instance_handle), char* ROCKET_UNUSED(command_line), int ROCKET_UNUSED(command_show))
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int ROCKET_UNUSED(argc), char** ROCKET_UNUSED(argv))
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	// Generic OS initialisation, creates a window and attaches OpenGL.
 	if (!Shell::Initialise("../Samples/basic/loaddocument/") ||
 		!Shell::OpenWindow("Load Document Sample", true))

+ 12 - 2
Samples/basic/treeview/src/main.cpp

@@ -47,11 +47,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED(instance_handle), HINSTANCE ROCKET_UNUSED(previous_instance_handle), char* ROCKET_UNUSED(command_line), int ROCKET_UNUSED(command_show))
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int ROCKET_UNUSED(argc), char** ROCKET_UNUSED(argv))
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	// Generic OS initialisation, creates a window and attaches OpenGL.
 	if (!Shell::Initialise("../Samples/basic/treeview/") ||
 		!Shell::OpenWindow("Tree View Sample", true))

+ 8 - 3
Samples/invaders/src/DecoratorDefender.cpp

@@ -47,19 +47,24 @@ bool DecoratorDefender::Initialise(const Rocket::Core::String& image_source, con
 }
 
 /// Called on a decorator to generate any required per-element data for a newly decorated element.
-Rocket::Core::DecoratorDataHandle DecoratorDefender::GenerateElementData(Rocket::Core::Element* ROCKET_UNUSED(element))
+Rocket::Core::DecoratorDataHandle DecoratorDefender::GenerateElementData(Rocket::Core::Element* ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
+
 	return NULL;
 }
 
 // Called to release element data generated by this decorator.
-void DecoratorDefender::ReleaseElementData(Rocket::Core::DecoratorDataHandle ROCKET_UNUSED(element_data))
+void DecoratorDefender::ReleaseElementData(Rocket::Core::DecoratorDataHandle ROCKET_UNUSED_PARAMETER(element_data))
 {
+	ROCKET_UNUSED(element_data);
 }
 
 // Called to render the decorator on an element.
-void DecoratorDefender::RenderElement(Rocket::Core::Element* element, Rocket::Core::DecoratorDataHandle ROCKET_UNUSED(element_data))
+void DecoratorDefender::RenderElement(Rocket::Core::Element* element, Rocket::Core::DecoratorDataHandle ROCKET_UNUSED_PARAMETER(element_data))
 {
+	ROCKET_UNUSED(element_data);
+
 	Rocket::Core::Vector2f position = element->GetAbsoluteOffset(Rocket::Core::Box::PADDING);
 	Rocket::Core::Vector2f size = element->GetBox().GetSize(Rocket::Core::Box::PADDING);
 

+ 3 - 1
Samples/invaders/src/DecoratorInstancerDefender.cpp

@@ -40,8 +40,10 @@ DecoratorInstancerDefender::~DecoratorInstancerDefender()
 }
 
 // Instances a decorator given the property tag and attributes from the RCSS file.
-Rocket::Core::Decorator* DecoratorInstancerDefender::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED(name), const Rocket::Core::PropertyDictionary& properties)
+Rocket::Core::Decorator* DecoratorInstancerDefender::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(name), const Rocket::Core::PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	const Rocket::Core::Property* image_source_property = properties.GetProperty("image-src");
 	Rocket::Core::String image_source = image_source_property->Get< Rocket::Core::String >();
 

+ 3 - 1
Samples/invaders/src/DecoratorInstancerStarfield.cpp

@@ -45,8 +45,10 @@ DecoratorInstancerStarfield::~DecoratorInstancerStarfield()
 }
 
 // Instances a decorator given the property tag and attributes from the RCSS file.
-Rocket::Core::Decorator* DecoratorInstancerStarfield::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED(name), const Rocket::Core::PropertyDictionary& properties)
+Rocket::Core::Decorator* DecoratorInstancerStarfield::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(name), const Rocket::Core::PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	int num_layers = Rocket::Core::Math::RealToInteger(properties.GetProperty("num-layers")->Get< float >());
 	Rocket::Core::Colourb top_colour = properties.GetProperty("top-colour")->Get< Rocket::Core::Colourb >();
 	Rocket::Core::Colourb bottom_colour = properties.GetProperty("bottom-colour")->Get< Rocket::Core::Colourb >();

+ 3 - 1
Samples/invaders/src/DecoratorStarfield.cpp

@@ -95,8 +95,10 @@ void DecoratorStarfield::ReleaseElementData(Rocket::Core::DecoratorDataHandle el
 }
 
 // Called to render the decorator on an element.
-void DecoratorStarfield::RenderElement(Rocket::Core::Element* ROCKET_UNUSED(element), Rocket::Core::DecoratorDataHandle element_data)
+void DecoratorStarfield::RenderElement(Rocket::Core::Element* ROCKET_UNUSED_PARAMETER(element), Rocket::Core::DecoratorDataHandle element_data)
 {
+	ROCKET_UNUSED(element);
+
 	StarField* star_field = reinterpret_cast<StarField*>(element_data);
 	star_field->Update();
 

+ 3 - 1
Samples/invaders/src/Event.cpp

@@ -43,7 +43,9 @@ void Event::ProcessEvent(Rocket::Core::Event& event)
 }
 
 // Destroys the event.
-void Event::OnDetach(Rocket::Core::Element* ROCKET_UNUSED(element))
+void Event::OnDetach(Rocket::Core::Element* ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
+
 	delete this;
 }

+ 7 - 2
Samples/pyinvaders/src/DecoratorDefender.cpp

@@ -47,19 +47,24 @@ bool DecoratorDefender::Initialise(const Rocket::Core::String& image_source, con
 }
 
 /// Called on a decorator to generate any required per-element data for a newly decorated element.
-Rocket::Core::DecoratorDataHandle DecoratorDefender::GenerateElementData(Rocket::Core::Element* ROCKET_UNUSED(element))
+Rocket::Core::DecoratorDataHandle DecoratorDefender::GenerateElementData(Rocket::Core::Element* ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
+
 	return NULL;
 }
 
 // Called to release element data generated by this decorator.
 void DecoratorDefender::ReleaseElementData(Rocket::Core::DecoratorDataHandle ROCKET_UNUSED(element_data))
 {
+		ROCKET_UNUSED(element_data);
 }
 
 // Called to render the decorator on an element.
-void DecoratorDefender::RenderElement(Rocket::Core::Element* element, Rocket::Core::DecoratorDataHandle ROCKET_UNUSED(element_data))
+void DecoratorDefender::RenderElement(Rocket::Core::Element* element, Rocket::Core::DecoratorDataHandle ROCKET_UNUSED_PARAMETER(element_data))
 {
+	ROCKET_UNUSED(element_data);
+
 	Rocket::Core::Vector2f position = element->GetAbsoluteOffset(Rocket::Core::Box::PADDING);
 	Rocket::Core::Vector2f size = element->GetBox().GetSize(Rocket::Core::Box::PADDING);
 

+ 3 - 1
Samples/pyinvaders/src/DecoratorInstancerDefender.cpp

@@ -40,8 +40,10 @@ DecoratorInstancerDefender::~DecoratorInstancerDefender()
 }
 
 // Instances a decorator given the property tag and attributes from the RCSS file.
-Rocket::Core::Decorator* DecoratorInstancerDefender::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED(name), const Rocket::Core::PropertyDictionary& properties)
+Rocket::Core::Decorator* DecoratorInstancerDefender::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(name), const Rocket::Core::PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	const Rocket::Core::Property* image_source_property = properties.GetProperty("image-src");
 	Rocket::Core::String image_source = image_source_property->Get< Rocket::Core::String >();
 

+ 3 - 1
Samples/pyinvaders/src/DecoratorStarfield.cpp

@@ -95,8 +95,10 @@ void DecoratorStarfield::ReleaseElementData(Rocket::Core::DecoratorDataHandle el
 }
 
 // Called to render the decorator on an element.
-void DecoratorStarfield::RenderElement(Rocket::Core::Element* ROCKET_UNUSED(element), Rocket::Core::DecoratorDataHandle element_data)
+void DecoratorStarfield::RenderElement(Rocket::Core::Element* ROCKET_UNUSED_PARAMETER(element), Rocket::Core::DecoratorDataHandle element_data)
 {
+	ROCKET_UNUSED(element);
+
 	StarField* star_field = (StarField*)element_data;
 	star_field->Update();
 

+ 12 - 2
Samples/pyinvaders/src/main.cpp

@@ -53,11 +53,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE, HINSTANCE, char*, int)
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int, char**)
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	#ifdef ROCKET_PLATFORM_MACOSX
 	#define APP_PATH "../"
 	#define ROCKET_PATH "../../bin/"

+ 15 - 4
Samples/shell/src/ShellRenderInterfaceOpenGL.cpp

@@ -42,8 +42,10 @@ void ShellRenderInterfaceOpenGL::SetViewport(int width, int height)
 
 
 // Called by Rocket when it wants to render geometry that it does not wish to optimise.
-void ShellRenderInterfaceOpenGL::RenderGeometry(Rocket::Core::Vertex* vertices, int ROCKET_UNUSED(num_vertices), int* indices, int num_indices, const Rocket::Core::TextureHandle texture, const Rocket::Core::Vector2f& translation)
+void ShellRenderInterfaceOpenGL::RenderGeometry(Rocket::Core::Vertex* vertices, int ROCKET_UNUSED_PARAMETER(num_vertices), int* indices, int num_indices, const Rocket::Core::TextureHandle texture, const Rocket::Core::Vector2f& translation)
 {
+	ROCKET_UNUSED(num_vertices);
+	
 	glPushMatrix();
 	glTranslatef(translation.x, translation.y, 0);
 
@@ -70,19 +72,28 @@ void ShellRenderInterfaceOpenGL::RenderGeometry(Rocket::Core::Vertex* vertices,
 }
 
 // Called by Rocket when it wants to compile geometry it believes will be static for the forseeable future.		
-Rocket::Core::CompiledGeometryHandle ShellRenderInterfaceOpenGL::CompileGeometry(Rocket::Core::Vertex* ROCKET_UNUSED(vertices), int ROCKET_UNUSED(num_vertices), int* ROCKET_UNUSED(indices), int ROCKET_UNUSED(num_indices), const Rocket::Core::TextureHandle ROCKET_UNUSED(texture))
+Rocket::Core::CompiledGeometryHandle ShellRenderInterfaceOpenGL::CompileGeometry(Rocket::Core::Vertex* ROCKET_UNUSED_PARAMETER(vertices), int ROCKET_UNUSED_PARAMETER(num_vertices), int* ROCKET_UNUSED_PARAMETER(indices), int ROCKET_UNUSED_PARAMETER(num_indices), const Rocket::Core::TextureHandle ROCKET_UNUSED_PARAMETER(texture))
 {
+	ROCKET_UNUSED(vertices);
+	ROCKET_UNUSED(num_vertices);
+	ROCKET_UNUSED(indices);
+	ROCKET_UNUSED(num_indices);
+	ROCKET_UNUSED(texture);
+
 	return (Rocket::Core::CompiledGeometryHandle) NULL;
 }
 
 // Called by Rocket when it wants to render application-compiled geometry.		
-void ShellRenderInterfaceOpenGL::RenderCompiledGeometry(Rocket::Core::CompiledGeometryHandle ROCKET_UNUSED(geometry), const Rocket::Core::Vector2f& ROCKET_UNUSED(translation))
+void ShellRenderInterfaceOpenGL::RenderCompiledGeometry(Rocket::Core::CompiledGeometryHandle ROCKET_UNUSED_PARAMETER(geometry), const Rocket::Core::Vector2f& ROCKET_UNUSED_PARAMETER(translation))
 {
+	ROCKET_UNUSED(geometry);
+	ROCKET_UNUSED(translation);
 }
 
 // Called by Rocket when it wants to release application-compiled geometry.		
-void ShellRenderInterfaceOpenGL::ReleaseCompiledGeometry(Rocket::Core::CompiledGeometryHandle ROCKET_UNUSED(geometry))
+void ShellRenderInterfaceOpenGL::ReleaseCompiledGeometry(Rocket::Core::CompiledGeometryHandle ROCKET_UNUSED_PARAMETER(geometry))
 {
+	ROCKET_UNUSED(geometry);
 }
 
 // Called by Rocket when it wants to enable or disable scissoring to clip content.		

+ 8 - 3
Samples/tutorial/datagrid/src/DecoratorDefender.cpp

@@ -31,19 +31,24 @@ bool DecoratorDefender::Initialise(const Rocket::Core::String& image_source, con
 }
 
 /// Called on a decorator to generate any required per-element data for a newly decorated element.
-Rocket::Core::DecoratorDataHandle DecoratorDefender::GenerateElementData(Rocket::Core::Element* ROCKET_UNUSED(element))
+Rocket::Core::DecoratorDataHandle DecoratorDefender::GenerateElementData(Rocket::Core::Element* ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
+
 	return NULL;
 }
 
 // Called to release element data generated by this decorator.
-void DecoratorDefender::ReleaseElementData(Rocket::Core::DecoratorDataHandle ROCKET_UNUSED(element_data))
+void DecoratorDefender::ReleaseElementData(Rocket::Core::DecoratorDataHandle ROCKET_UNUSED_PARAMETER(element_data))
 {
+	ROCKET_UNUSED(element_data);
 }
 
 // Called to render the decorator on an element.
-void DecoratorDefender::RenderElement(Rocket::Core::Element* element, Rocket::Core::DecoratorDataHandle ROCKET_UNUSED(element_data))
+void DecoratorDefender::RenderElement(Rocket::Core::Element* element, Rocket::Core::DecoratorDataHandle ROCKET_UNUSED_PARAMETER(element_data))
 {
+	ROCKET_UNUSED(element_data);
+
 	Rocket::Core::Vector2f position = element->GetAbsoluteOffset(Rocket::Core::Box::PADDING);
 	Rocket::Core::Vector2f size = element->GetBox().GetSize(Rocket::Core::Box::PADDING);
 

+ 3 - 1
Samples/tutorial/datagrid/src/DecoratorInstancerDefender.cpp

@@ -24,8 +24,10 @@ DecoratorInstancerDefender::~DecoratorInstancerDefender()
 }
 
 // Instances a decorator given the property tag and attributes from the RCSS file.
-Rocket::Core::Decorator* DecoratorInstancerDefender::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED(name), const Rocket::Core::PropertyDictionary& properties)
+Rocket::Core::Decorator* DecoratorInstancerDefender::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(name), const Rocket::Core::PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	const Rocket::Core::Property* image_source_property = properties.GetProperty("image-src");
 	Rocket::Core::String image_source = image_source_property->Get< Rocket::Core::String >();
 

+ 12 - 2
Samples/tutorial/datagrid/src/main.cpp

@@ -31,11 +31,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED(instance_handle), HINSTANCE ROCKET_UNUSED(previous_instance_handle), char* ROCKET_UNUSED(command_line), int ROCKET_UNUSED(command_show))
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int ROCKET_UNUSED(argc), char** ROCKET_UNUSED(argv))
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	// Generic OS initialisation, creates a window and attaches OpenGL.
 	if (!Shell::Initialise("../Samples/tutorial/datagrid/") ||
 		!Shell::OpenWindow("Datagrid Tutorial", true))

+ 8 - 3
Samples/tutorial/datagrid_tree/src/DecoratorDefender.cpp

@@ -31,19 +31,24 @@ bool DecoratorDefender::Initialise(const Rocket::Core::String& image_source, con
 }
 
 /// Called on a decorator to generate any required per-element data for a newly decorated element.
-Rocket::Core::DecoratorDataHandle DecoratorDefender::GenerateElementData(Rocket::Core::Element* ROCKET_UNUSED(element))
+Rocket::Core::DecoratorDataHandle DecoratorDefender::GenerateElementData(Rocket::Core::Element* ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
+
 	return NULL;
 }
 
 // Called to release element data generated by this decorator.
-void DecoratorDefender::ReleaseElementData(Rocket::Core::DecoratorDataHandle ROCKET_UNUSED(element_data))
+void DecoratorDefender::ReleaseElementData(Rocket::Core::DecoratorDataHandle ROCKET_UNUSED_PARAMETER(element_data))
 {
+	ROCKET_UNUSED(element_data);
 }
 
 // Called to render the decorator on an element.
-void DecoratorDefender::RenderElement(Rocket::Core::Element* element, Rocket::Core::DecoratorDataHandle ROCKET_UNUSED(element_data))
+void DecoratorDefender::RenderElement(Rocket::Core::Element* element, Rocket::Core::DecoratorDataHandle ROCKET_UNUSED_PARAMETER(element_data))
 {
+	ROCKET_UNUSED(element_data);
+
 	Rocket::Core::Vector2f position = element->GetAbsoluteOffset(Rocket::Core::Box::PADDING);
 	Rocket::Core::Vector2f size = element->GetBox().GetSize(Rocket::Core::Box::PADDING);
 

+ 3 - 1
Samples/tutorial/datagrid_tree/src/DecoratorInstancerDefender.cpp

@@ -24,8 +24,10 @@ DecoratorInstancerDefender::~DecoratorInstancerDefender()
 }
 
 // Instances a decorator given the property tag and attributes from the RCSS file.
-Rocket::Core::Decorator* DecoratorInstancerDefender::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED(name), const Rocket::Core::PropertyDictionary& properties)
+Rocket::Core::Decorator* DecoratorInstancerDefender::InstanceDecorator(const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(name), const Rocket::Core::PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	const Rocket::Core::Property* image_source_property = properties.GetProperty("image-src");
 	Rocket::Core::String image_source = image_source_property->Get< Rocket::Core::String >();
 

+ 12 - 2
Samples/tutorial/datagrid_tree/src/main.cpp

@@ -32,11 +32,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED(instance_handle), HINSTANCE ROCKET_UNUSED(previous_instance_handle), char* ROCKET_UNUSED(command_line), int ROCKET_UNUSED(command_show))
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int ROCKET_UNUSED(argc), char** ROCKET_UNUSED(argv))
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	// Generic OS initialisation, creates a window and attaches OpenGL.
 	if (!Shell::Initialise("../Samples/tutorial/datagrid_tree/") ||
 		!Shell::OpenWindow("Datagrid Tree Tutorial", true))

+ 12 - 2
Samples/tutorial/template/src/main.cpp

@@ -28,11 +28,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED(instance_handle), HINSTANCE ROCKET_UNUSED(previous_instance_handle), char* ROCKET_UNUSED(command_line), int ROCKET_UNUSED(command_show))
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int ROCKET_UNUSED(argc), char** ROCKET_UNUSED(argv))
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	// Generic OS initialisation, creates a window and attaches OpenGL.
 	if (!Shell::Initialise("../Samples/tutorial/template/") ||
 		!Shell::OpenWindow("Template Tutorial", true))

+ 12 - 2
Samples/tutorial/tutorial_drag/src/main.cpp

@@ -29,11 +29,21 @@ void GameLoop()
 
 #if defined ROCKET_PLATFORM_WIN32
 #include <windows.h>
-int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED(instance_handle), HINSTANCE ROCKET_UNUSED(previous_instance_handle), char* ROCKET_UNUSED(command_line), int ROCKET_UNUSED(command_show))
+int APIENTRY WinMain(HINSTANCE ROCKET_UNUSED_PARAMETER(instance_handle), HINSTANCE ROCKET_UNUSED_PARAMETER(previous_instance_handle), char* ROCKET_UNUSED_PARAMETER(command_line), int ROCKET_UNUSED_PARAMETER(command_show))
 #else
-int main(int ROCKET_UNUSED(argc), char** ROCKET_UNUSED(argv))
+int main(int ROCKET_UNUSED_PARAMETER(argc), char** ROCKET_UNUSED_PARAMETER(argv))
 #endif
 {
+#ifdef ROCKET_PLATFORM_WIN32
+	ROCKET_UNUSED(instance_handle);
+	ROCKET_UNUSED(previous_instance_handle);
+	ROCKET_UNUSED(command_line);
+	ROCKET_UNUSED(command_show);
+#else
+	ROCKET_UNUSED(argc);
+	ROCKET_UNUSED(argv);
+#endif
+
 	// Generic OS initialisation, creates a window and attaches OpenGL.
 	if (!Shell::Initialise("../Samples/tutorial/tutorial_drag/") ||
 		!Shell::OpenWindow("Drag Tutorial", true))

+ 4 - 1
Source/Controls/DataQuery.cpp

@@ -40,8 +40,11 @@ class DataQuerySort
 			order_parameters = _order_parameters;
 		}
 
-		bool operator()(const Rocket::Core::StringList& ROCKET_UNUSED(left), const Rocket::Core::StringList& ROCKET_UNUSED(right))
+		bool operator()(const Rocket::Core::StringList& ROCKET_UNUSED_PARAMETER(left), const Rocket::Core::StringList& ROCKET_UNUSED_PARAMETER(right))
 		{
+			ROCKET_UNUSED(left);
+			ROCKET_UNUSED(right);
+
 			return false;
 		}
 

+ 20 - 5
Source/Controls/DataSourceListener.cpp

@@ -42,28 +42,43 @@ DataSourceListener::~DataSourceListener()
 }
 
 // Notification of the destruction of an observed data source.
-void DataSourceListener::OnDataSourceDestroy(DataSource* ROCKET_UNUSED(data_source))
+void DataSourceListener::OnDataSourceDestroy(DataSource* ROCKET_UNUSED_PARAMETER(data_source))
 {
+	ROCKET_UNUSED(data_source);
 }
 
 // Notification of the addition of one or more rows to an observed data source's table.
-void DataSourceListener::OnRowAdd(DataSource* ROCKET_UNUSED(data_source), const Rocket::Core::String& ROCKET_UNUSED(table), int ROCKET_UNUSED(first_row_added), int ROCKET_UNUSED(num_rows_added))
+void DataSourceListener::OnRowAdd(DataSource* ROCKET_UNUSED_PARAMETER(data_source), const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(table), int ROCKET_UNUSED_PARAMETER(first_row_added), int ROCKET_UNUSED_PARAMETER(num_rows_added))
 {
+	ROCKET_UNUSED(data_source);
+	ROCKET_UNUSED(table);
+	ROCKET_UNUSED(first_row_added);
+	ROCKET_UNUSED(num_rows_added);
 }
 
 // Notification of the removal of one or more rows from an observed data source's table.
-void DataSourceListener::OnRowRemove(DataSource* ROCKET_UNUSED(data_source), const Rocket::Core::String& ROCKET_UNUSED(table), int ROCKET_UNUSED(first_row_removed), int ROCKET_UNUSED(num_rows_removed))
+void DataSourceListener::OnRowRemove(DataSource* ROCKET_UNUSED_PARAMETER(data_source), const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(table), int ROCKET_UNUSED_PARAMETER(first_row_removed), int ROCKET_UNUSED_PARAMETER(num_rows_removed))
 {
+	ROCKET_UNUSED(data_source);
+	ROCKET_UNUSED(table);
+	ROCKET_UNUSED(first_row_removed);
+	ROCKET_UNUSED(num_rows_removed);
 }
 
 // Notification of the changing of one or more rows from an observed data source's table.
-void DataSourceListener::OnRowChange(DataSource* ROCKET_UNUSED(data_source), const Rocket::Core::String& ROCKET_UNUSED(table), int ROCKET_UNUSED(first_row_changed), int ROCKET_UNUSED(num_rows_changed))
+void DataSourceListener::OnRowChange(DataSource* ROCKET_UNUSED_PARAMETER(data_source), const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(table), int ROCKET_UNUSED_PARAMETER(first_row_changed), int ROCKET_UNUSED_PARAMETER(num_rows_changed))
 {
+	ROCKET_UNUSED(data_source);
+	ROCKET_UNUSED(table);
+	ROCKET_UNUSED(first_row_changed);
+	ROCKET_UNUSED(num_rows_changed);
 }
 
 // Notification of the change of all of the data of an observed data source's table.
-void DataSourceListener::OnRowChange(DataSource* ROCKET_UNUSED(data_source), const Rocket::Core::String& ROCKET_UNUSED(table))
+void DataSourceListener::OnRowChange(DataSource* ROCKET_UNUSED_PARAMETER(data_source), const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(table))
 {
+	ROCKET_UNUSED(data_source);
+	ROCKET_UNUSED(table);
 }
 
 // Sets up data source and table from a given string.

+ 3 - 1
Source/Controls/ElementDataGridRow.cpp

@@ -245,8 +245,10 @@ ElementDataGrid* ElementDataGridRow::GetParentGrid()
 	return parent_grid;
 }
 
-void ElementDataGridRow::OnDataSourceDestroy(DataSource* ROCKET_UNUSED(_data_source))
+void ElementDataGridRow::OnDataSourceDestroy(DataSource* ROCKET_UNUSED_PARAMETER(data_source))
 {
+	ROCKET_UNUSED(data_source);
+
 	data_source->DetachListener(this);
 	data_source = NULL;
 

+ 18 - 4
Source/Controls/ElementFormControlDataSelect.cpp

@@ -103,29 +103,43 @@ void ElementFormControlDataSelect::OnDataSourceDestroy(DataSource* _data_source)
 }
 
 // Rebuilds the available options from the data source.
-void ElementFormControlDataSelect::OnRowAdd(DataSource* ROCKET_UNUSED(data_source), const Rocket::Core::String& table, int ROCKET_UNUSED(first_row_added), int ROCKET_UNUSED(num_rows_added))
+void ElementFormControlDataSelect::OnRowAdd(DataSource* ROCKET_UNUSED_PARAMETER(data_source), const Rocket::Core::String& table, int ROCKET_UNUSED_PARAMETER(first_row_added), int ROCKET_UNUSED_PARAMETER(num_rows_added))
 {
+	ROCKET_UNUSED(data_source);
+	ROCKET_UNUSED(first_row_added);
+	ROCKET_UNUSED(num_rows_added);
+
 	if (table == data_table)
 		BuildOptions();
 }
 
 // Rebuilds the available options from the data source.
-void ElementFormControlDataSelect::OnRowRemove(DataSource* ROCKET_UNUSED(data_source), const Rocket::Core::String& table, int ROCKET_UNUSED(first_row_removed), int ROCKET_UNUSED(num_rows_removed))
+void ElementFormControlDataSelect::OnRowRemove(DataSource* ROCKET_UNUSED_PARAMETER(data_source), const Rocket::Core::String& table, int ROCKET_UNUSED_PARAMETER(first_row_removed), int ROCKET_UNUSED_PARAMETER(num_rows_removed))
 {
+	ROCKET_UNUSED(data_source);
+	ROCKET_UNUSED(first_row_removed);
+	ROCKET_UNUSED(num_rows_removed);
+	
 	if (table == data_table)
 		BuildOptions();
 }
 
 // Rebuilds the available options from the data source.
-void ElementFormControlDataSelect::OnRowChange(DataSource* ROCKET_UNUSED(data_source), const Rocket::Core::String& table, int ROCKET_UNUSED(first_row_changed), int ROCKET_UNUSED(num_rows_changed))
+void ElementFormControlDataSelect::OnRowChange(DataSource* ROCKET_UNUSED_PARAMETER(data_source), const Rocket::Core::String& table, int ROCKET_UNUSED_PARAMETER(first_row_changed), int ROCKET_UNUSED_PARAMETER(num_rows_changed))
 {
+	ROCKET_UNUSED(data_source);
+	ROCKET_UNUSED(first_row_changed);
+	ROCKET_UNUSED(num_rows_changed);
+	
 	if (table == data_table)
 		BuildOptions();
 }
 
 // Rebuilds the available options from the data source.
-void ElementFormControlDataSelect::OnRowChange(DataSource* ROCKET_UNUSED(data_source), const Rocket::Core::String& table)
+void ElementFormControlDataSelect::OnRowChange(DataSource* ROCKET_UNUSED_PARAMETER(data_source), const Rocket::Core::String& table)
 {
+	ROCKET_UNUSED(data_source);
+
 	if (table == data_table)
 		BuildOptions();
 }

+ 6 - 2
Source/Controls/ElementTabSet.cpp

@@ -225,13 +225,17 @@ Core::Element* ElementTabSet::GetChildByTag(const Rocket::Core::String& tag)
 	return element;
 }
 
-void ElementTabSet::OnAttach(Core::Element * ROCKET_UNUSED(element))
+void ElementTabSet::OnAttach(Core::Element * ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
+
 	AddReference();
 }
 
-void ElementTabSet::OnDetach(Core::Element * ROCKET_UNUSED(element))
+void ElementTabSet::OnDetach(Core::Element * ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
+
 	RemoveReference();
 }
 

+ 5 - 2
Source/Controls/InputType.cpp

@@ -62,14 +62,17 @@ void InputType::OnRender()
 }
 
 // Checks for necessary functional changes in the control as a result of changed attributes.
-bool InputType::OnAttributeChange(const Core::AttributeNameList& ROCKET_UNUSED(changed_attributes))
+bool InputType::OnAttributeChange(const Core::AttributeNameList& ROCKET_UNUSED_PARAMETER(changed_attributes))
 {
+	ROCKET_UNUSED(changed_attributes);
+
 	return true;
 }
 
 // Called when properties on the control are changed.
-void InputType::OnPropertyChange(const Core::PropertyNameList& ROCKET_UNUSED(changed_properties))
+void InputType::OnPropertyChange(const Core::PropertyNameList& ROCKET_UNUSED_PARAMETER(changed_properties))
 {
+	ROCKET_UNUSED(changed_properties);
 }
 
 // Called when the element is added into a hierarchy.

+ 3 - 1
Source/Controls/InputTypeButton.cpp

@@ -67,8 +67,10 @@ void InputTypeButton::ProcessEvent(Core::Event& event)
 }
 
 // Sizes the dimensions to the element's inherent size.
-bool InputTypeButton::GetIntrinsicDimensions(Rocket::Core::Vector2f& ROCKET_UNUSED(dimensions))
+bool InputTypeButton::GetIntrinsicDimensions(Rocket::Core::Vector2f& ROCKET_UNUSED_PARAMETER(dimensions))
 {
+	ROCKET_UNUSED(dimensions);
+
 	return false;
 }
 

+ 3 - 1
Source/Controls/InputTypeSubmit.cpp

@@ -70,8 +70,10 @@ void InputTypeSubmit::ProcessEvent(Core::Event& event)
 }
 
 // Sizes the dimensions to the element's inherent size.
-bool InputTypeSubmit::GetIntrinsicDimensions(Rocket::Core::Vector2f& ROCKET_UNUSED(dimensions))
+bool InputTypeSubmit::GetIntrinsicDimensions(Rocket::Core::Vector2f& ROCKET_UNUSED_PARAMETER(dimensions))
 {
+	ROCKET_UNUSED(dimensions);
+	
 	return false;
 }
 

+ 2 - 1
Source/Controls/InputTypeText.cpp

@@ -96,8 +96,9 @@ void InputTypeText::OnPropertyChange(const Core::PropertyNameList& changed_prope
 }
 
 // Checks for necessary functional changes in the control as a result of the event.
-void InputTypeText::ProcessEvent(Core::Event& ROCKET_UNUSED(event))
+void InputTypeText::ProcessEvent(Core::Event& ROCKET_UNUSED_PARAMETER(event))
 {
+	ROCKET_UNUSED(event);
 }
 
 // Sizes the dimensions to the element's inherent size.

+ 4 - 1
Source/Controls/XMLNodeHandlerDataGrid.cpp

@@ -100,8 +100,11 @@ Core::Element* XMLNodeHandlerDataGrid::ElementStart(Core::XMLParser* parser, con
 	return element;
 }
 
-bool XMLNodeHandlerDataGrid::ElementEnd(Core::XMLParser* ROCKET_UNUSED(parser), const Rocket::Core::String& ROCKET_UNUSED(name))
+bool XMLNodeHandlerDataGrid::ElementEnd(Core::XMLParser* ROCKET_UNUSED_PARAMETER(parser), const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(name))
 {
+	ROCKET_UNUSED(parser);
+	ROCKET_UNUSED(name);
+
 	return true;
 }
 

+ 4 - 1
Source/Controls/XMLNodeHandlerTabSet.cpp

@@ -129,8 +129,11 @@ Core::Element* XMLNodeHandlerTabSet::ElementStart(Core::XMLParser* parser, const
 	return NULL;
 }
 
-bool XMLNodeHandlerTabSet::ElementEnd(Core::XMLParser* ROCKET_UNUSED(parser), const Rocket::Core::String& ROCKET_UNUSED(name))
+bool XMLNodeHandlerTabSet::ElementEnd(Core::XMLParser* ROCKET_UNUSED_PARAMETER(parser), const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(name))
 {
+	ROCKET_UNUSED(parser);
+	ROCKET_UNUSED(name);
+
 	return true;
 }
 

+ 4 - 1
Source/Controls/XMLNodeHandlerTextArea.cpp

@@ -58,8 +58,11 @@ Core::Element* XMLNodeHandlerTextArea::ElementStart(Core::XMLParser* parser, con
 	return NULL;
 }
 
-bool XMLNodeHandlerTextArea::ElementEnd(Core::XMLParser* ROCKET_UNUSED(parser), const Rocket::Core::String& ROCKET_UNUSED(name))
+bool XMLNodeHandlerTextArea::ElementEnd(Core::XMLParser* ROCKET_UNUSED_PARAMETER(parser), const Rocket::Core::String& ROCKET_UNUSED_PARAMETER(name))
 {
+	ROCKET_UNUSED(parser);
+	ROCKET_UNUSED(name);
+
 	return true;
 }
 

+ 7 - 3
Source/Core/BaseXMLParser.cpp

@@ -81,18 +81,22 @@ int BaseXMLParser::GetLineNumber()
 }
 
 // Called when the parser finds the beginning of an element tag.
-void BaseXMLParser::HandleElementStart(const String& ROCKET_UNUSED(name), const XMLAttributes& ROCKET_UNUSED(attributes))
+void BaseXMLParser::HandleElementStart(const String& ROCKET_UNUSED_PARAMETER(name), const XMLAttributes& ROCKET_UNUSED_PARAMETER(attributes))
 {
+	ROCKET_UNUSED(name);
+	ROCKET_UNUSED(attributes);
 }
 
 // Called when the parser finds the end of an element tag.
-void BaseXMLParser::HandleElementEnd(const String& ROCKET_UNUSED(name))
+void BaseXMLParser::HandleElementEnd(const String& ROCKET_UNUSED_PARAMETER(name))
 {
+	ROCKET_UNUSED(name);
 }
 
 // Called when the parser encounters data.
-void BaseXMLParser::HandleData(const String& ROCKET_UNUSED(data))
+void BaseXMLParser::HandleData(const String& ROCKET_UNUSED_PARAMETER(data))
 {
+	ROCKET_UNUSED(data);
 }
 
 void BaseXMLParser::ReadHeader()

+ 8 - 3
Source/Core/DecoratorNone.cpp

@@ -36,19 +36,24 @@ DecoratorNone::~DecoratorNone()
 }
 
 // Called on a decorator to generate any required per-element data for a newly decorated element.
-DecoratorDataHandle DecoratorNone::GenerateElementData(Element* ROCKET_UNUSED(element))
+DecoratorDataHandle DecoratorNone::GenerateElementData(Element* ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
+
 	return 0;
 }
 
 // Called to release element data generated by this decorator.
-void DecoratorNone::ReleaseElementData(DecoratorDataHandle ROCKET_UNUSED(element_data))
+void DecoratorNone::ReleaseElementData(DecoratorDataHandle ROCKET_UNUSED_PARAMETER(element_data))
 {
+	ROCKET_UNUSED(element_data);
 }
 
 // Called to render the decorator on an element.
-void DecoratorNone::RenderElement(Element* ROCKET_UNUSED(element), DecoratorDataHandle ROCKET_UNUSED(element_data))
+void DecoratorNone::RenderElement(Element* ROCKET_UNUSED_PARAMETER(element), DecoratorDataHandle ROCKET_UNUSED_PARAMETER(element_data))
 {
+	ROCKET_UNUSED(element);
+	ROCKET_UNUSED(element_data);
 }
 
 }

+ 4 - 1
Source/Core/DecoratorNoneInstancer.cpp

@@ -37,8 +37,11 @@ DecoratorNoneInstancer::~DecoratorNoneInstancer()
 }
 
 // Instances a decorator given the property tag and attributes from the RCSS file.
-Decorator* DecoratorNoneInstancer::InstanceDecorator(const String& ROCKET_UNUSED(name), const PropertyDictionary& ROCKET_UNUSED(properties))
+Decorator* DecoratorNoneInstancer::InstanceDecorator(const String& ROCKET_UNUSED_PARAMETER(name), const PropertyDictionary& ROCKET_UNUSED_PARAMETER(properties))
 {
+	ROCKET_UNUSED(name);
+	ROCKET_UNUSED(properties);
+
 	return new DecoratorNone();
 }
 

+ 3 - 1
Source/Core/DecoratorTiledBoxInstancer.cpp

@@ -52,8 +52,10 @@ DecoratorTiledBoxInstancer::~DecoratorTiledBoxInstancer()
 }
 
 // Instances a box decorator.
-Decorator* DecoratorTiledBoxInstancer::InstanceDecorator(const String& ROCKET_UNUSED(name), const PropertyDictionary& properties)
+Decorator* DecoratorTiledBoxInstancer::InstanceDecorator(const String& ROCKET_UNUSED_PARAMETER(name), const PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	DecoratorTiled::Tile tiles[9];
 	String texture_names[9];
 	String rcss_paths[9];

+ 3 - 1
Source/Core/DecoratorTiledHorizontalInstancer.cpp

@@ -44,8 +44,10 @@ DecoratorTiledHorizontalInstancer::~DecoratorTiledHorizontalInstancer()
 }
 
 // Instances a box decorator.
-Decorator* DecoratorTiledHorizontalInstancer::InstanceDecorator(const String& ROCKET_UNUSED(name), const PropertyDictionary& properties)
+Decorator* DecoratorTiledHorizontalInstancer::InstanceDecorator(const String& ROCKET_UNUSED_PARAMETER(name), const PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	DecoratorTiled::Tile tiles[3];
 	String texture_names[3];
 	String rcss_paths[3];

+ 3 - 1
Source/Core/DecoratorTiledImageInstancer.cpp

@@ -42,8 +42,10 @@ DecoratorTiledImageInstancer::~DecoratorTiledImageInstancer()
 }
 
 // Instances a box decorator.
-Decorator* DecoratorTiledImageInstancer::InstanceDecorator(const String& ROCKET_UNUSED(name), const PropertyDictionary& properties)
+Decorator* DecoratorTiledImageInstancer::InstanceDecorator(const String& ROCKET_UNUSED_PARAMETER(name), const PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	DecoratorTiled::Tile tile;
 	String texture_name;
 	String rcss_path;

+ 3 - 1
Source/Core/DecoratorTiledVerticalInstancer.cpp

@@ -44,8 +44,10 @@ DecoratorTiledVerticalInstancer::~DecoratorTiledVerticalInstancer()
 }
 
 // Instances a box decorator.
-Decorator* DecoratorTiledVerticalInstancer::InstanceDecorator(const String& ROCKET_UNUSED(name), const PropertyDictionary& properties)
+Decorator* DecoratorTiledVerticalInstancer::InstanceDecorator(const String& ROCKET_UNUSED_PARAMETER(name), const PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	DecoratorTiled::Tile tiles[3];
 	String texture_names[3];
 	String rcss_paths[3];

+ 3 - 1
Source/Core/Element.cpp

@@ -447,8 +447,10 @@ float Element::GetBaseline() const
 }
 
 // Gets the intrinsic dimensions of this element, if it is of a type that has an inherent size.
-bool Element::GetIntrinsicDimensions(Vector2f& ROCKET_UNUSED(dimensions))
+bool Element::GetIntrinsicDimensions(Vector2f& ROCKET_UNUSED_PARAMETER(dimensions))
 {
+	ROCKET_UNUSED(dimensions);
+
 	return false;
 }
 

+ 3 - 1
Source/Core/ElementDefinition.cpp

@@ -407,8 +407,10 @@ void ElementDefinition::BuildPropertyGroup(PropertyGroupMap& groups, const Strin
 }
 
 // Updates a property dictionary of all properties for a single group.
-int ElementDefinition::BuildPropertyGroupDictionary(PropertyDictionary& group_properties, const String& ROCKET_UNUSED(group_type), const String& group_name, const PropertyDictionary& element_properties)
+int ElementDefinition::BuildPropertyGroupDictionary(PropertyDictionary& group_properties, const String& ROCKET_UNUSED_PARAMETER(group_type), const String& group_name, const PropertyDictionary& element_properties)
 {
+	ROCKET_UNUSED(group_type);
+
 	int num_properties = 0;
 
 	for (PropertyMap::const_iterator property_iterator = element_properties.GetProperties().begin(); property_iterator != element_properties.GetProperties().end(); ++property_iterator)

+ 3 - 1
Source/Core/ElementDocument.cpp

@@ -287,8 +287,10 @@ bool ElementDocument::IsModal() const
 }
 
 // Default load script implementation
-void ElementDocument::LoadScript(Stream* ROCKET_UNUSED(stream), const String& ROCKET_UNUSED(source_name))
+void ElementDocument::LoadScript(Stream* ROCKET_UNUSED_PARAMETER(stream), const String& ROCKET_UNUSED_PARAMETER(source_name))
 {
+	ROCKET_UNUSED(stream);
+	ROCKET_UNUSED(source_name);
 }
 
 // Updates the layout if necessary.

+ 10 - 2
Source/Core/FontEffect.cpp

@@ -57,14 +57,22 @@ bool FontEffect::HasUniqueTexture() const
 }
 
 // Gets the effect to resize and reposition a glyph's bitmap.
-bool FontEffect::GetGlyphMetrics(Vector2i& ROCKET_UNUSED(origin), Vector2i& ROCKET_UNUSED(dimensions), const FontGlyph& ROCKET_UNUSED(glyph)) const
+bool FontEffect::GetGlyphMetrics(Vector2i& ROCKET_UNUSED_PARAMETER(origin), Vector2i& ROCKET_UNUSED_PARAMETER(dimensions), const FontGlyph& ROCKET_UNUSED_PARAMETER(glyph)) const
 {
+	ROCKET_UNUSED(origin);
+	ROCKET_UNUSED(dimensions);
+	ROCKET_UNUSED(glyph);
+
 	return false;
 }
 
 // Requests the effect to generate the texture data for a single glyph's bitmap.
-void FontEffect::GenerateGlyphTexture(byte* ROCKET_UNUSED(destination_data), const Vector2i& ROCKET_UNUSED(destination_dimensions), int ROCKET_UNUSED(destination_stride), const FontGlyph& ROCKET_UNUSED(glyph)) const
+void FontEffect::GenerateGlyphTexture(byte* ROCKET_UNUSED_PARAMETER(destination_data), const Vector2i& ROCKET_UNUSED_PARAMETER(destination_dimensions), int ROCKET_UNUSED_PARAMETER(destination_stride), const FontGlyph& ROCKET_UNUSED_PARAMETER(glyph)) const
 {
+	ROCKET_UNUSED(destination_data);
+	ROCKET_UNUSED(destination_dimensions);
+	ROCKET_UNUSED(destination_stride);
+	ROCKET_UNUSED(glyph);
 }
 
 // Sets the colour of the effect's geometry.

+ 10 - 2
Source/Core/FontEffectNone.cpp

@@ -40,14 +40,22 @@ FontEffectNone::~FontEffectNone()
 }
 
 // Resizes and repositions the glyph to fit the outline.
-bool FontEffectNone::GetGlyphSize(Vector2i& ROCKET_UNUSED(origin), Vector2i& ROCKET_UNUSED(dimensions), const FontGlyph& ROCKET_UNUSED(glyph)) const
+bool FontEffectNone::GetGlyphSize(Vector2i& ROCKET_UNUSED_PARAMETER(origin), Vector2i& ROCKET_UNUSED_PARAMETER(dimensions), const FontGlyph& ROCKET_UNUSED_PARAMETER(glyph)) const
 {
+	ROCKET_UNUSED(origin);
+	ROCKET_UNUSED(dimensions);
+	ROCKET_UNUSED(glyph);
+
 	return false;
 }
 
 // Expands the original glyph texture for the outline.
-void FontEffectNone::GenerateGlyphTexture(byte* ROCKET_UNUSED(destination_data), const Vector2i& ROCKET_UNUSED(destination_dimensions), int ROCKET_UNUSED(destination_stride), const FontGlyph& ROCKET_UNUSED(glyph)) const
+void FontEffectNone::GenerateGlyphTexture(byte* ROCKET_UNUSED_PARAMETER(destination_data), const Vector2i& ROCKET_UNUSED_PARAMETER(destination_dimensions), int ROCKET_UNUSED_PARAMETER(destination_stride), const FontGlyph& ROCKET_UNUSED_PARAMETER(glyph)) const
 {
+	ROCKET_UNUSED(destination_data);
+	ROCKET_UNUSED(destination_dimensions);
+	ROCKET_UNUSED(destination_stride);
+	ROCKET_UNUSED(glyph);
 }
 
 }

+ 4 - 1
Source/Core/FontEffectNoneInstancer.cpp

@@ -41,8 +41,11 @@ FontEffectNoneInstancer::~FontEffectNoneInstancer()
 }
 
 // Instances an outline font effect.
-FontEffect* FontEffectNoneInstancer::InstanceFontEffect(const String& ROCKET_UNUSED(name), const PropertyDictionary& ROCKET_UNUSED(properties))
+FontEffect* FontEffectNoneInstancer::InstanceFontEffect(const String& ROCKET_UNUSED_PARAMETER(name), const PropertyDictionary& ROCKET_UNUSED_PARAMETER(properties))
 {
+	ROCKET_UNUSED(name);
+	ROCKET_UNUSED(properties);
+
 	FontEffectNone* none_effect = new FontEffectNone();
 	return none_effect;
 }

+ 3 - 1
Source/Core/FontEffectOutline.cpp

@@ -79,8 +79,10 @@ bool FontEffectOutline::Initialise(int _width)
 }
 
 // Resizes and repositions the glyph to fit the outline.
-bool FontEffectOutline::GetGlyphMetrics(Vector2i& origin, Vector2i& dimensions, const FontGlyph& ROCKET_UNUSED(glyph)) const
+bool FontEffectOutline::GetGlyphMetrics(Vector2i& origin, Vector2i& dimensions, const FontGlyph& ROCKET_UNUSED_PARAMETER(glyph)) const
 {
+	ROCKET_UNUSED(glyph);
+
 	if (dimensions.x * dimensions.y > 0)
 	{
 		origin.x -= width;

+ 3 - 1
Source/Core/FontEffectOutlineInstancer.cpp

@@ -43,8 +43,10 @@ FontEffectOutlineInstancer::~FontEffectOutlineInstancer()
 }
 
 // Instances an outline font effect.
-FontEffect* FontEffectOutlineInstancer::InstanceFontEffect(const String& ROCKET_UNUSED(name), const PropertyDictionary& properties)
+FontEffect* FontEffectOutlineInstancer::InstanceFontEffect(const String& ROCKET_UNUSED_PARAMETER(name), const PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	float width = properties.GetProperty("width")->Get< float >();
 
 	FontEffectOutline* font_effect = new FontEffectOutline();

+ 4 - 1
Source/Core/FontEffectShadow.cpp

@@ -55,8 +55,11 @@ bool FontEffectShadow::HasUniqueTexture() const
 }
 
 // Resizes and repositions the glyph to fit the outline.
-bool FontEffectShadow::GetGlyphMetrics(Vector2i& origin, Vector2i& ROCKET_UNUSED(dimensions), const FontGlyph& ROCKET_UNUSED(glyph)) const
+bool FontEffectShadow::GetGlyphMetrics(Vector2i& origin, Vector2i& ROCKET_UNUSED_PARAMETER(dimensions), const FontGlyph& ROCKET_UNUSED_PARAMETER(glyph)) const
 {
+	ROCKET_UNUSED(dimensions);
+	ROCKET_UNUSED(glyph);
+
 	origin += offset;
 	return true;
 }

+ 3 - 1
Source/Core/FontEffectShadowInstancer.cpp

@@ -46,8 +46,10 @@ FontEffectShadowInstancer::~FontEffectShadowInstancer()
 }
 
 // Instances an outline font effect.
-FontEffect* FontEffectShadowInstancer::InstanceFontEffect(const String& ROCKET_UNUSED(name), const PropertyDictionary& properties)
+FontEffect* FontEffectShadowInstancer::InstanceFontEffect(const String& ROCKET_UNUSED_PARAMETER(name), const PropertyDictionary& properties)
 {
+	ROCKET_UNUSED(name);
+
 	Vector2i offset;
 	offset.x = Math::RealToInteger(properties.GetProperty("offset-x")->Get< float >());
 	offset.y = Math::RealToInteger(properties.GetProperty("offset-y")->Get< float >());

+ 3 - 2
Source/Core/LayoutEngine.cpp

@@ -285,9 +285,10 @@ float LayoutEngine::Round(float value)
 	return ceilf(value);
 }
 
-void* LayoutEngine::AllocateLayoutChunk(size_t size)
+void* LayoutEngine::AllocateLayoutChunk(size_t ROCKET_UNUSED_ASSERT_PARAMETER(size))
 {
-	(size);
+	ROCKET_UNUSED_ASSERT(size);
+
 	ROCKET_ASSERT(size <= LayoutChunk::size);
 
 	return layout_chunk_pool.AllocateObject();

+ 5 - 1
Source/Core/LayoutInlineBox.cpp

@@ -151,8 +151,12 @@ bool LayoutInlineBox::IsLastChild() const
 }
 
 // Flows the inline box's content into its parent line.
-LayoutInlineBox* LayoutInlineBox::FlowContent(bool ROCKET_UNUSED(first_box), float ROCKET_UNUSED(available_width), float ROCKET_UNUSED(right_spacing_width))
+LayoutInlineBox* LayoutInlineBox::FlowContent(bool ROCKET_UNUSED_PARAMETER(first_box), float ROCKET_UNUSED_PARAMETER(available_width), float ROCKET_UNUSED_PARAMETER(right_spacing_width))
 {
+	ROCKET_UNUSED(first_box);
+	ROCKET_UNUSED(available_width);
+	ROCKET_UNUSED(right_spacing_width);
+
 	// If we're representing a sized element, then add our element's width onto our parent's.
 	if (parent != NULL &&
 		box.GetSize().x > 0)

+ 2 - 1
Source/Core/LayoutInlineBoxText.cpp

@@ -122,8 +122,9 @@ void LayoutInlineBoxText::PositionElement()
 }
 
 // Sizes the inline box's element.
-void LayoutInlineBoxText::SizeElement(bool ROCKET_UNUSED(split))
+void LayoutInlineBoxText::SizeElement(bool ROCKET_UNUSED_PARAMETER(split))
 {
+	ROCKET_UNUSED(split);
 }
 
 void* LayoutInlineBoxText::operator new(size_t size)

+ 15 - 7
Source/Core/Plugin.cpp

@@ -49,39 +49,47 @@ void Plugin::OnShutdown()
 }
 
 // Called when a new context is created.
-void Plugin::OnContextCreate(Context* ROCKET_UNUSED(context))
+void Plugin::OnContextCreate(Context* ROCKET_UNUSED_PARAMETER(context))
 {
+	ROCKET_UNUSED(context);
 }
 
 // Called when a context is destroyed.
-void Plugin::OnContextDestroy(Context* ROCKET_UNUSED(context))
+void Plugin::OnContextDestroy(Context* ROCKET_UNUSED_PARAMETER(context))
 {
+	ROCKET_UNUSED(context);
 }
 
 // Called when a document load request occurs, before the document's file is opened.
-void Plugin::OnDocumentOpen(Context* ROCKET_UNUSED(context), const String& ROCKET_UNUSED(document_path))
+void Plugin::OnDocumentOpen(Context* ROCKET_UNUSED_PARAMETER(context), const String& ROCKET_UNUSED_PARAMETER(document_path))
 {
+	ROCKET_UNUSED(context);
+	ROCKET_UNUSED(document_path);
 }
 
 // Called when a document is successfully loaded from file or instanced, initialised and added to
 // its context.
-void Plugin::OnDocumentLoad(ElementDocument* ROCKET_UNUSED(document))
+void Plugin::OnDocumentLoad(ElementDocument* ROCKET_UNUSED_PARAMETER(document))
 {
+	ROCKET_UNUSED(document);
 }
 
 // Called when a document is unloaded from its context.
-void Plugin::OnDocumentUnload(ElementDocument* ROCKET_UNUSED(document))
+void Plugin::OnDocumentUnload(ElementDocument* ROCKET_UNUSED_PARAMETER(document))
 {
+	ROCKET_UNUSED(document);
 }
 
 // Called when a new element is created.
-void Plugin::OnElementCreate(Element* ROCKET_UNUSED(element))
+void Plugin::OnElementCreate(Element* ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
 }
 
 // Called when an element is destroyed.
-void Plugin::OnElementDestroy(Element* ROCKET_UNUSED(element))
+void Plugin::OnElementDestroy(Element* ROCKET_UNUSED_PARAMETER(element))
 {
+	ROCKET_UNUSED(element);
 }
 
 }

+ 3 - 1
Source/Core/PropertyParserColour.cpp

@@ -59,8 +59,10 @@ PropertyParserColour::~PropertyParserColour()
 }
 
 // Called to parse a RCSS colour declaration.
-bool PropertyParserColour::ParseValue(Property& property, const String& value, const ParameterMap& ROCKET_UNUSED(parameters)) const
+bool PropertyParserColour::ParseValue(Property& property, const String& value, const ParameterMap& ROCKET_UNUSED_PARAMETER(parameters)) const
 {
+	ROCKET_UNUSED(parameters);
+
 	if (value.Empty())
 		return false;
 

+ 3 - 1
Source/Core/PropertyParserNumber.cpp

@@ -49,8 +49,10 @@ PropertyParserNumber::~PropertyParserNumber()
 }
 
 // Called to parse a RCSS number declaration.
-bool PropertyParserNumber::ParseValue(Property& property, const String& value, const ParameterMap& ROCKET_UNUSED(parameters)) const
+bool PropertyParserNumber::ParseValue(Property& property, const String& value, const ParameterMap& ROCKET_UNUSED_PARAMETER(parameters)) const
 {
+	ROCKET_UNUSED(parameters);
+
 	// Default to a simple number.
 	property.unit = Property::NUMBER;
 

+ 3 - 1
Source/Core/PropertyParserString.cpp

@@ -40,8 +40,10 @@ PropertyParserString::~PropertyParserString()
 }
 
 // Called to parse a RCSS string declaration.
-bool PropertyParserString::ParseValue(Property& property, const String& value, const ParameterMap& ROCKET_UNUSED(parameters)) const
+bool PropertyParserString::ParseValue(Property& property, const String& value, const ParameterMap& ROCKET_UNUSED_PARAMETER(parameters)) const
 {
+	ROCKET_UNUSED(parameters);
+
 	property.value = Variant(value);
 	property.unit = Property::STRING;
 

+ 24 - 6
Source/Core/RenderInterface.cpp

@@ -42,36 +42,54 @@ RenderInterface::~RenderInterface()
 }
 
 // Called by Rocket when it wants to compile geometry it believes will be static for the forseeable future.
-CompiledGeometryHandle RenderInterface::CompileGeometry(Vertex* ROCKET_UNUSED(vertices), int ROCKET_UNUSED(num_vertices), int* ROCKET_UNUSED(indices), int ROCKET_UNUSED(num_indices), TextureHandle ROCKET_UNUSED(texture))
+CompiledGeometryHandle RenderInterface::CompileGeometry(Vertex* ROCKET_UNUSED_PARAMETER(vertices), int ROCKET_UNUSED_PARAMETER(num_vertices), int* ROCKET_UNUSED_PARAMETER(indices), int ROCKET_UNUSED_PARAMETER(num_indices), TextureHandle ROCKET_UNUSED_PARAMETER(texture))
 {
+	ROCKET_UNUSED(vertices);
+	ROCKET_UNUSED(num_vertices);
+	ROCKET_UNUSED(indices);
+	ROCKET_UNUSED(num_indices);
+	ROCKET_UNUSED(texture);
+
 	return 0;
 }
 
 // Called by Rocket when it wants to render application-compiled geometry.
-void RenderInterface::RenderCompiledGeometry(CompiledGeometryHandle ROCKET_UNUSED(geometry), const Vector2f& ROCKET_UNUSED(translation))
+void RenderInterface::RenderCompiledGeometry(CompiledGeometryHandle ROCKET_UNUSED_PARAMETER(geometry), const Vector2f& ROCKET_UNUSED_PARAMETER(translation))
 {
+	ROCKET_UNUSED(geometry);
+	ROCKET_UNUSED(translation);
 }
 
 // Called by Rocket when it wants to release application-compiled geometry.
-void RenderInterface::ReleaseCompiledGeometry(CompiledGeometryHandle ROCKET_UNUSED(geometry))
+void RenderInterface::ReleaseCompiledGeometry(CompiledGeometryHandle ROCKET_UNUSED_PARAMETER(geometry))
 {
+	ROCKET_UNUSED(geometry);
 }
 
 // Called by Rocket when a texture is required by the library.
-bool RenderInterface::LoadTexture(TextureHandle& ROCKET_UNUSED(texture_handle), Vector2i& ROCKET_UNUSED(texture_dimensions), const String& ROCKET_UNUSED(source))
+bool RenderInterface::LoadTexture(TextureHandle& ROCKET_UNUSED_PARAMETER(texture_handle), Vector2i& ROCKET_UNUSED_PARAMETER(texture_dimensions), const String& ROCKET_UNUSED_PARAMETER(source))
 {
+	ROCKET_UNUSED(texture_handle);
+	ROCKET_UNUSED(texture_dimensions);
+	ROCKET_UNUSED(source);
+
 	return false;
 }
 
 // Called by Rocket when a texture is required to be built from an internally-generated sequence of pixels.
-bool RenderInterface::GenerateTexture(TextureHandle& ROCKET_UNUSED(texture_handle), const byte* ROCKET_UNUSED(source), const Vector2i& ROCKET_UNUSED(source_dimensions))
+bool RenderInterface::GenerateTexture(TextureHandle& ROCKET_UNUSED_PARAMETER(texture_handle), const byte* ROCKET_UNUSED_PARAMETER(source), const Vector2i& ROCKET_UNUSED_PARAMETER(source_dimensions))
 {
+	ROCKET_UNUSED(texture_handle);
+	ROCKET_UNUSED(source);
+	ROCKET_UNUSED(source_dimensions);
+	
 	return false;
 }
 
 // Called by Rocket when a loaded texture is no longer required.
-void RenderInterface::ReleaseTexture(TextureHandle ROCKET_UNUSED(texture))
+void RenderInterface::ReleaseTexture(TextureHandle ROCKET_UNUSED_PARAMETER(texture))
 {
+	ROCKET_UNUSED(texture);
 }
 
 // Returns the native horizontal texel offset for the renderer.

+ 7 - 2
Source/Core/Stream.cpp

@@ -118,8 +118,11 @@ size_t Stream::Write(const String& string)
 }
 
 // Push onto the front of the stream
-size_t Stream::PushFront(const void* ROCKET_UNUSED(buffer), size_t ROCKET_UNUSED(bytes))
+size_t Stream::PushFront(const void* ROCKET_UNUSED_PARAMETER(buffer), size_t ROCKET_UNUSED_PARAMETER(bytes))
 {
+	ROCKET_UNUSED(buffer);
+	ROCKET_UNUSED(bytes);
+
 	ROCKET_ERRORMSG("No generic way to PushFront to a stream.");
 	return false;
 }
@@ -135,8 +138,10 @@ size_t Stream::PushBack(const void* buffer, size_t bytes)
 }
 
 // Push onto the front of the stream
-size_t Stream::PopFront(size_t ROCKET_UNUSED(bytes))
+size_t Stream::PopFront(size_t ROCKET_UNUSED_PARAMETER(bytes))
 {
+	ROCKET_UNUSED(bytes);
+
 	ROCKET_ERRORMSG("No generic way to PopFront from a stream.");
 	return 0;
 }

+ 7 - 2
Source/Core/StreamFile.cpp

@@ -105,15 +105,20 @@ size_t StreamFile::Read(void* buffer, size_t bytes) const
 }
 
 // Write to the stream at the current position.
-size_t StreamFile::Write(const void* ROCKET_UNUSED(buffer), size_t ROCKET_UNUSED(bytes))
+size_t StreamFile::Write(const void* ROCKET_UNUSED_PARAMETER(buffer), size_t ROCKET_UNUSED_PARAMETER(bytes))
 {
+	ROCKET_UNUSED(buffer);
+	ROCKET_UNUSED(bytes);
+
 	ROCKET_ERROR;
 	return 0;
 }
 
 // Truncate the stream to the specified length.
-size_t StreamFile::Truncate(size_t ROCKET_UNUSED(bytes))
+size_t StreamFile::Truncate(size_t ROCKET_UNUSED_PARAMETER(bytes))
 {
+	ROCKET_UNUSED(bytes);
+
 	ROCKET_ERROR;
 	return 0;
 }

+ 4 - 1
Source/Core/StyleSheetNodeSelectorEmpty.cpp

@@ -42,8 +42,11 @@ StyleSheetNodeSelectorEmpty::~StyleSheetNodeSelectorEmpty()
 }
 
 // Returns true if the element has no DOM children.
-bool StyleSheetNodeSelectorEmpty::IsApplicable(const Element* element, int ROCKET_UNUSED(a), int ROCKET_UNUSED(b))
+bool StyleSheetNodeSelectorEmpty::IsApplicable(const Element* element, int ROCKET_UNUSED_PARAMETER(a), int ROCKET_UNUSED_PARAMETER(b))
 {
+	ROCKET_UNUSED(a);
+	ROCKET_UNUSED(b);
+
 	for (int i = 0; i < element->GetNumChildren(); ++i)
 	{
 		if (element->GetChild(i)->GetDisplay() != DISPLAY_NONE)

+ 4 - 1
Source/Core/StyleSheetNodeSelectorFirstChild.cpp

@@ -42,8 +42,11 @@ StyleSheetNodeSelectorFirstChild::~StyleSheetNodeSelectorFirstChild()
 }
 
 // Returns true if the element is the first DOM child in its parent.
-bool StyleSheetNodeSelectorFirstChild::IsApplicable(const Element* element, int ROCKET_UNUSED(a), int ROCKET_UNUSED(b))
+bool StyleSheetNodeSelectorFirstChild::IsApplicable(const Element* element, int ROCKET_UNUSED_PARAMETER(a), int ROCKET_UNUSED_PARAMETER(b))
 {
+	ROCKET_UNUSED(a);
+	ROCKET_UNUSED(b);
+
 	Element* parent = element->GetParentNode();
 	if (parent == NULL)
 		return false;

+ 4 - 1
Source/Core/StyleSheetNodeSelectorFirstOfType.cpp

@@ -42,8 +42,11 @@ StyleSheetNodeSelectorFirstOfType::~StyleSheetNodeSelectorFirstOfType()
 }
 
 // Returns true if the element is the first DOM child in its parent of its type.
-bool StyleSheetNodeSelectorFirstOfType::IsApplicable(const Element* element, int ROCKET_UNUSED(a), int ROCKET_UNUSED(b))
+bool StyleSheetNodeSelectorFirstOfType::IsApplicable(const Element* element, int ROCKET_UNUSED_PARAMETER(a), int ROCKET_UNUSED_PARAMETER(b))
 {
+	ROCKET_UNUSED(a);
+	ROCKET_UNUSED(b);
+
 	Element* parent = element->GetParentNode();
 	if (parent == NULL)
 		return false;

+ 4 - 1
Source/Core/StyleSheetNodeSelectorLastChild.cpp

@@ -42,8 +42,11 @@ StyleSheetNodeSelectorLastChild::~StyleSheetNodeSelectorLastChild()
 }
 
 // Returns true if the element is the last DOM child in its parent.
-bool StyleSheetNodeSelectorLastChild::IsApplicable(const Element* element, int ROCKET_UNUSED(a), int ROCKET_UNUSED(b))
+bool StyleSheetNodeSelectorLastChild::IsApplicable(const Element* element, int ROCKET_UNUSED_PARAMETER(a), int ROCKET_UNUSED_PARAMETER(b))
 {
+	ROCKET_UNUSED(a);
+	ROCKET_UNUSED(b);
+
 	Element* parent = element->GetParentNode();
 	if (parent == NULL)
 		return false;

+ 4 - 1
Source/Core/StyleSheetNodeSelectorLastOfType.cpp

@@ -42,8 +42,11 @@ StyleSheetNodeSelectorLastOfType::~StyleSheetNodeSelectorLastOfType()
 }
 
 // Returns true if the element is the last DOM child in its parent.
-bool StyleSheetNodeSelectorLastOfType::IsApplicable(const Element* element, int ROCKET_UNUSED(a), int ROCKET_UNUSED(b))
+bool StyleSheetNodeSelectorLastOfType::IsApplicable(const Element* element, int ROCKET_UNUSED_PARAMETER(a), int ROCKET_UNUSED_PARAMETER(b))
 {
+	ROCKET_UNUSED(a);
+	ROCKET_UNUSED(b);
+
 	Element* parent = element->GetParentNode();
 	if (parent == NULL)
 		return false;

+ 4 - 1
Source/Core/StyleSheetNodeSelectorOnlyChild.cpp

@@ -42,8 +42,11 @@ StyleSheetNodeSelectorOnlyChild::~StyleSheetNodeSelectorOnlyChild()
 }
 
 // Returns true if the element is the only non-trivial DOM child of its parent.
-bool StyleSheetNodeSelectorOnlyChild::IsApplicable(const Element* element, int ROCKET_UNUSED(a), int ROCKET_UNUSED(b))
+bool StyleSheetNodeSelectorOnlyChild::IsApplicable(const Element* element, int ROCKET_UNUSED_PARAMETER(a), int ROCKET_UNUSED_PARAMETER(b))
 {
+	ROCKET_UNUSED(a);
+	ROCKET_UNUSED(b);
+
 	Element* parent = element->GetParentNode();
 	if (parent == NULL)
 		return false;

+ 4 - 1
Source/Core/StyleSheetNodeSelectorOnlyOfType.cpp

@@ -42,8 +42,11 @@ StyleSheetNodeSelectorOnlyOfType::~StyleSheetNodeSelectorOnlyOfType()
 }
 
 // Returns true if the element is the only DOM child of its parent of its type.
-bool StyleSheetNodeSelectorOnlyOfType::IsApplicable(const Element* element, int ROCKET_UNUSED(a), int ROCKET_UNUSED(b))
+bool StyleSheetNodeSelectorOnlyOfType::IsApplicable(const Element* element, int ROCKET_UNUSED_PARAMETER(a), int ROCKET_UNUSED_PARAMETER(b))
 {
+	ROCKET_UNUSED(a);
+	ROCKET_UNUSED(b);
+
 	Element* parent = element->GetParentNode();
 	if (parent == NULL)
 		return false;

+ 8 - 3
Source/Core/SystemInterface.cpp

@@ -44,10 +44,10 @@ SystemInterface::~SystemInterface()
 {
 }
 
+#ifdef ROCKET_PLATFORM_WIN32
 bool SystemInterface::LogMessage(Log::Type logtype, const String& message)
 {
 	// By default we just send a platform message
-#ifdef ROCKET_PLATFORM_WIN32
 	if (logtype == Log::LT_ASSERT)
 	{
 		Core::String message(1024, "%s\nWould you like to interrupt execution?", message.CString());	
@@ -60,12 +60,17 @@ bool SystemInterface::LogMessage(Log::Type logtype, const String& message)
 		OutputDebugStringA(message.CString());
 		OutputDebugStringA("\r\n");
 	}
+	return true;
+}
 #else
-	(logtype);
+bool SystemInterface::LogMessage(Log::Type ROCKET_UNUSED_PARAMETER(logtype), const String& message)
+{
+	ROCKET_UNUSED(logtype);
+
 	fprintf(stderr,"%s\n", message.CString());
-#endif	
 	return true;
 }
+#endif	
 
 int SystemInterface::TranslateString(String& translated, const String& input)
 {

+ 12 - 4
Source/Core/WidgetSliderScroll.cpp

@@ -43,8 +43,10 @@ WidgetSliderScroll::~WidgetSliderScroll()
 }
 
 // Sets the length of the entire track in some arbitrary unit.
-void WidgetSliderScroll::SetTrackLength(float _track_length, bool ROCKET_UNUSED(force_resize))
+void WidgetSliderScroll::SetTrackLength(float _track_length, bool ROCKET_UNUSED_PARAMETER(force_resize))
 {
+	ROCKET_UNUSED(force_resize);
+
 	if (track_length != _track_length)
 	{
 		track_length = _track_length;
@@ -53,8 +55,10 @@ void WidgetSliderScroll::SetTrackLength(float _track_length, bool ROCKET_UNUSED(
 }
 
 // Sets the length the bar represents in some arbitrary unit, relative to the track length.
-void WidgetSliderScroll::SetBarLength(float _bar_length, bool ROCKET_UNUSED(force_resize))
+void WidgetSliderScroll::SetBarLength(float _bar_length, bool ROCKET_UNUSED_PARAMETER(force_resize))
 {
+	ROCKET_UNUSED(force_resize);
+	
 	if (bar_length != _bar_length)
 	{
 		bar_length = _bar_length;
@@ -105,15 +109,19 @@ float WidgetSliderScroll::OnLineDecrement()
 
 // Called when the slider is incremented by one 'page', either by the page-up key or a mouse-click on the track
 // below / right of the bar.
-float WidgetSliderScroll::OnPageIncrement(float ROCKET_UNUSED(click_position))
+float WidgetSliderScroll::OnPageIncrement(float ROCKET_UNUSED_PARAMETER(click_position))
 {
+	ROCKET_UNUSED(click_position);
+	
 	return Scroll(bar_length);
 }
 
 // Called when the slider is incremented by one 'page', either by the page-down key or a mouse-click on the track
 // above / left of the bar.
-float WidgetSliderScroll::OnPageDecrement(float ROCKET_UNUSED(click_position))
+float WidgetSliderScroll::OnPageDecrement(float ROCKET_UNUSED_PARAMETER(click_position))
 {
+	ROCKET_UNUSED(click_position);
+	
 	return Scroll(-bar_length);
 }
 

+ 6 - 3
Source/Core/XMLNodeHandlerBody.cpp

@@ -41,9 +41,9 @@ XMLNodeHandlerBody::~XMLNodeHandlerBody()
 {
 }
 
-Element* XMLNodeHandlerBody::ElementStart(XMLParser* parser, const String& name, const XMLAttributes& attributes)
+Element* XMLNodeHandlerBody::ElementStart(XMLParser* parser, const String& ROCKET_UNUSED_ASSERT_PARAMETER(name), const XMLAttributes& attributes)
 {
-	(name);
+	ROCKET_UNUSED_ASSERT(name);
 	ROCKET_ASSERT(name == "body");
 
 	Element* element = parser->GetParseFrame()->element;
@@ -66,8 +66,11 @@ Element* XMLNodeHandlerBody::ElementStart(XMLParser* parser, const String& name,
 	return element;
 }
 
-bool XMLNodeHandlerBody::ElementEnd(XMLParser* ROCKET_UNUSED(parser), const String& ROCKET_UNUSED(name))
+bool XMLNodeHandlerBody::ElementEnd(XMLParser* ROCKET_UNUSED_PARAMETER(parser), const String& ROCKET_UNUSED_PARAMETER(name))
 {
+	ROCKET_UNUSED(parser);
+	ROCKET_UNUSED(name);
+
 	return true;
 }
 

+ 4 - 1
Source/Core/XMLNodeHandlerDefault.cpp

@@ -64,8 +64,11 @@ Element* XMLNodeHandlerDefault::ElementStart(XMLParser* parser, const String& na
 	return element;
 }
 
-bool XMLNodeHandlerDefault::ElementEnd(XMLParser* ROCKET_UNUSED(parser), const String& ROCKET_UNUSED(name))
+bool XMLNodeHandlerDefault::ElementEnd(XMLParser* ROCKET_UNUSED_PARAMETER(parser), const String& ROCKET_UNUSED_PARAMETER(name))
 {
+	ROCKET_UNUSED(parser);
+	ROCKET_UNUSED(name);
+
 	return true;
 }
 

+ 6 - 4
Source/Core/XMLNodeHandlerTemplate.cpp

@@ -43,11 +43,10 @@ XMLNodeHandlerTemplate::~XMLNodeHandlerTemplate()
 {
 }
 
-Element* XMLNodeHandlerTemplate::ElementStart(XMLParser* parser, const String& name, const XMLAttributes& attributes)
+Element* XMLNodeHandlerTemplate::ElementStart(XMLParser* parser, const String& ROCKET_UNUSED_ASSERT_PARAMETER(name), const XMLAttributes& attributes)
 {
-	name;
+	ROCKET_UNUSED_ASSERT(name);
 	ROCKET_ASSERT(name == "template");
-	(name);
 
 	String template_name = attributes.Get<String>("src", "");
 
@@ -57,8 +56,11 @@ Element* XMLNodeHandlerTemplate::ElementStart(XMLParser* parser, const String& n
 	return XMLParseTools::ParseTemplate(parser->GetParseFrame()->element, template_name);
 }
 
-bool XMLNodeHandlerTemplate::ElementEnd(XMLParser* ROCKET_UNUSED(parser), const String& ROCKET_UNUSED(name))
+bool XMLNodeHandlerTemplate::ElementEnd(XMLParser* ROCKET_UNUSED_PARAMETER(parser), const String& ROCKET_UNUSED_PARAMETER(name))
 {
+	ROCKET_UNUSED(parser);
+	ROCKET_UNUSED(name);
+
 	return true;
 }