diff --git a/SConstruct b/SConstruct index e1814c37c3..cc3af90d48 100755 --- a/SConstruct +++ b/SConstruct @@ -387,13 +387,7 @@ elif main['CLANG']: # parantheses are allowed due to Ruby's printing of the AST, # finally self assignments are allowed as the generated CPU code # is relying on this - main.Append(CCFLAGS=['-Wno-parentheses', - '-Wno-self-assign', - # Some versions of libstdc++ (4.8?) seem to - # use struct hash and class hash - # interchangeably. - '-Wno-mismatched-tags', - ]) + main.Append(CCFLAGS=['-Wno-parentheses', '-Wno-self-assign']) conf.CheckCxxFlag('-Wno-c99-designator') conf.CheckCxxFlag('-Wno-defaulted-function-deleted') diff --git a/src/arch/arm/pmu.hh b/src/arch/arm/pmu.hh index 3cdcf1c0de..e8c63bfbc2 100644 --- a/src/arch/arm/pmu.hh +++ b/src/arch/arm/pmu.hh @@ -52,7 +52,7 @@ #include "sim/sim_object.hh" #include "sim/system.hh" -class ArmPMUParams; +struct ArmPMUParams; class Platform; class ThreadContext; class ArmInterruptPin; diff --git a/src/dev/arm/css/mhu.hh b/src/dev/arm/css/mhu.hh index 17704e83f2..4e136055ad 100644 --- a/src/dev/arm/css/mhu.hh +++ b/src/dev/arm/css/mhu.hh @@ -41,12 +41,12 @@ #include "dev/arm/doorbell.hh" #include "dev/io_device.hh" -class Ap2ScpDoorbellParams; +struct Ap2ScpDoorbellParams; class ArmInterruptPin; class MHU; -class MHUParams; +struct MHUParams; class Scp; -class Scp2ApDoorbellParams; +struct Scp2ApDoorbellParams; class MhuDoorbell : public Doorbell { diff --git a/src/dev/arm/display.hh b/src/dev/arm/display.hh index 1359487aa8..91819ffad2 100644 --- a/src/dev/arm/display.hh +++ b/src/dev/arm/display.hh @@ -40,7 +40,7 @@ #include "sim/sim_object.hh" -class DisplayParams; +struct DisplayParams; class Display : public SimObject { diff --git a/src/dev/arm/fvp_base_pwr_ctrl.hh b/src/dev/arm/fvp_base_pwr_ctrl.hh index 4b1bc4cec9..948ad30347 100644 --- a/src/dev/arm/fvp_base_pwr_ctrl.hh +++ b/src/dev/arm/fvp_base_pwr_ctrl.hh @@ -44,7 +44,7 @@ #include "dev/io_device.hh" class ArmSystem; -class FVPBasePwrCtrlParams; +struct FVPBasePwrCtrlParams; class ThreadContext; /** diff --git a/src/dev/arm/generic_timer.hh b/src/dev/arm/generic_timer.hh index 9a6663cd14..66048ccf7c 100644 --- a/src/dev/arm/generic_timer.hh +++ b/src/dev/arm/generic_timer.hh @@ -64,10 +64,10 @@ /// I2 - System Level Implementation of the Generic Timer class Checkpoint; -class SystemCounterParams; -class GenericTimerParams; -class GenericTimerFrameParams; -class GenericTimerMemParams; +struct SystemCounterParams; +struct GenericTimerParams; +struct GenericTimerFrameParams; +struct GenericTimerMemParams; /// Abstract class for elements whose events depend on the counting speed /// of the System Counter diff --git a/src/dev/arm/gpu_nomali.hh b/src/dev/arm/gpu_nomali.hh index a096edbee4..e30f3ed1f6 100644 --- a/src/dev/arm/gpu_nomali.hh +++ b/src/dev/arm/gpu_nomali.hh @@ -43,8 +43,8 @@ #include "dev/io_device.hh" #include "libnomali/nomali.h" -class NoMaliGpuParams; -class CustomNoMaliGpuParams; +struct NoMaliGpuParams; +struct CustomNoMaliGpuParams; class RealView; class NoMaliGpu : public PioDevice diff --git a/src/dev/arm/watchdog_generic.hh b/src/dev/arm/watchdog_generic.hh index 24d3999280..177df936da 100644 --- a/src/dev/arm/watchdog_generic.hh +++ b/src/dev/arm/watchdog_generic.hh @@ -42,7 +42,7 @@ #include "dev/io_device.hh" class ArmInterruptPin; -class GenericWatchdogParams; +struct GenericWatchdogParams; /** * @file diff --git a/src/dev/arm/watchdog_sp805.hh b/src/dev/arm/watchdog_sp805.hh index a64e4c9f61..5a6e962807 100644 --- a/src/dev/arm/watchdog_sp805.hh +++ b/src/dev/arm/watchdog_sp805.hh @@ -40,7 +40,7 @@ #include "dev/arm/amba_device.hh" -class Sp805Params; +struct Sp805Params; /** * @file diff --git a/src/gpu-compute/scheduler.hh b/src/gpu-compute/scheduler.hh index 1acf643741..fbf72062b4 100644 --- a/src/gpu-compute/scheduler.hh +++ b/src/gpu-compute/scheduler.hh @@ -38,7 +38,7 @@ #include "gpu-compute/scheduling_policy.hh" -class ComputeUnitParams; +struct ComputeUnitParams; class Scheduler { diff --git a/src/mem/qos/mem_sink.hh b/src/mem/qos/mem_sink.hh index 8a9708d898..27eded542d 100644 --- a/src/mem/qos/mem_sink.hh +++ b/src/mem/qos/mem_sink.hh @@ -46,7 +46,7 @@ #include "mem/qport.hh" #include "params/QoSMemSinkCtrl.hh" -class QoSMemSinkInterfaceParams; +struct QoSMemSinkInterfaceParams; class QoSMemSinkInterface; namespace QoS { diff --git a/src/mem/ruby/system/GPUCoalescer.hh b/src/mem/ruby/system/GPUCoalescer.hh index 05d5269e9f..01ad1d2f1b 100644 --- a/src/mem/ruby/system/GPUCoalescer.hh +++ b/src/mem/ruby/system/GPUCoalescer.hh @@ -52,10 +52,10 @@ class DataBlock; class CacheMsg; -class MachineID; +struct MachineID; class CacheMemory; -class RubyGPUCoalescerParams; +struct RubyGPUCoalescerParams; // List of packets that belongs to a specific instruction. typedef std::list PerInstPackets; diff --git a/src/mem/ruby/system/VIPERCoalescer.hh b/src/mem/ruby/system/VIPERCoalescer.hh index 213a67557d..40b32cc31c 100644 --- a/src/mem/ruby/system/VIPERCoalescer.hh +++ b/src/mem/ruby/system/VIPERCoalescer.hh @@ -46,10 +46,10 @@ class DataBlock; class CacheMsg; -class MachineID; +struct MachineID; class CacheMemory; -class VIPERCoalescerParams; +struct VIPERCoalescerParams; class VIPERCoalescer : public GPUCoalescer { diff --git a/src/sim/mem_state.hh b/src/sim/mem_state.hh index c052389c3b..d0fa9bd2a6 100644 --- a/src/sim/mem_state.hh +++ b/src/sim/mem_state.hh @@ -42,7 +42,7 @@ #include "sim/vma.hh" class Process; -class ProcessParams; +struct ProcessParams; class System; /** diff --git a/src/sim/probe/probe.hh b/src/sim/probe/probe.hh index 5becc26f27..eb0e445e93 100644 --- a/src/sim/probe/probe.hh +++ b/src/sim/probe/probe.hh @@ -69,7 +69,7 @@ /** Forward declare the ProbeManager. */ class ProbeManager; class ProbeListener; -class ProbeListenerObjectParams; +struct ProbeListenerObjectParams; /** * Name space containing shared probe point declarations. diff --git a/src/sim/ticked_object.hh b/src/sim/ticked_object.hh index 3991618081..abfa801dab 100644 --- a/src/sim/ticked_object.hh +++ b/src/sim/ticked_object.hh @@ -48,7 +48,7 @@ #include "sim/clocked_object.hh" -class TickedObjectParams; +struct TickedObjectParams; /** Ticked attaches gem5's event queue/scheduler to evaluate * calls and provides a start/stop interface to ticking.