arch: Fix broken M5VarArgsFault initialization
authorAndreas Sandberg <Andreas.Sandberg@ARM.com>
Mon, 7 Jan 2013 18:05:38 +0000 (13:05 -0500)
committerAndreas Sandberg <Andreas.Sandberg@ARM.com>
Mon, 7 Jan 2013 18:05:38 +0000 (13:05 -0500)
At least gcc 4.4.3 seems to get confused by the use of func both as a
template parameter and a member variable in the M5VarArgsFault
class. This causes the value of the member variable func to be
unpredictable in M5VarArgsFault objects. This changeset renames the
template parameter to remove this ambiguity.

src/arch/generic/debugfaults.hh

index 2a10ced92afa131c65e2c8efb75847ce24858728..c42f87c25204acedb15134785213cb58beaaae16 100644 (file)
@@ -108,12 +108,12 @@ class M5DebugFault : public FaultBase
     }
 };
 
-template <int func>
+template <int Func>
 class M5VarArgsFault : public M5DebugFault
 {
   public:
     M5VarArgsFault(const std::string &format, CPRINTF_DECLARATION) :
-        M5DebugFault((DebugFunc)func, csprintf(format, VARARGS_ALLARGS))
+        M5DebugFault((DebugFunc)Func, csprintf(format, VARARGS_ALLARGS))
     {}
 };