From 39baad9926b2d992b40ffb7b8f66459ddb21d439 Mon Sep 17 00:00:00 2001
From: Lioncash <mathew1800@gmail.com>
Date: Thu, 17 Mar 2016 00:27:12 -0400
Subject: [PATCH] core/video_core: Don't cast away const in subscript operators

Not to say these subscript operators aren't totally ugly as is.
---
 src/core/hw/gpu.h     | 6 +++---
 src/core/hw/lcd.h     | 6 +++---
 src/video_core/pica.h | 6 +++---
 3 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/src/core/hw/gpu.h b/src/core/hw/gpu.h
index 2e3a9f779..9e0701605 100644
--- a/src/core/hw/gpu.h
+++ b/src/core/hw/gpu.h
@@ -267,13 +267,13 @@ struct Regs {
         return sizeof(Regs) / sizeof(u32);
     }
 
-    u32& operator [] (int index) const {
-        u32* content = (u32*)this;
+    const u32& operator [] (int index) const {
+        const u32* content = reinterpret_cast<const u32*>(this);
         return content[index];
     }
 
     u32& operator [] (int index) {
-        u32* content = (u32*)this;
+        u32* content = reinterpret_cast<u32*>(this);
         return content[index];
     }
 
diff --git a/src/core/hw/lcd.h b/src/core/hw/lcd.h
index bcce6d8cf..d8ece4980 100644
--- a/src/core/hw/lcd.h
+++ b/src/core/hw/lcd.h
@@ -42,13 +42,13 @@ struct Regs {
         return sizeof(Regs) / sizeof(u32);
     }
 
-    u32& operator [] (int index) const {
-        u32* content = (u32*)this;
+    const u32& operator [] (int index) const {
+        const u32* content = reinterpret_cast<const u32*>(this);
         return content[index];
     }
 
     u32& operator [] (int index) {
-        u32* content = (u32*)this;
+        u32* content = reinterpret_cast<u32*>(this);
         return content[index];
     }
 
diff --git a/src/video_core/pica.h b/src/video_core/pica.h
index 7fb3aa481..d66124410 100644
--- a/src/video_core/pica.h
+++ b/src/video_core/pica.h
@@ -1225,13 +1225,13 @@ struct Regs {
         return sizeof(Regs) / sizeof(u32);
     }
 
-    u32& operator [] (int index) const {
-        u32* content = (u32*)this;
+    const u32& operator [] (int index) const {
+        const u32* content = reinterpret_cast<const u32*>(this);
         return content[index];
     }
 
     u32& operator [] (int index) {
-        u32* content = (u32*)this;
+        u32* content = reinterpret_cast<u32*>(this);
         return content[index];
     }