diff --git a/src/core/core_timing.h b/src/core/core_timing.h
index 7fe6380ad5..5bbde47f4d 100644
--- a/src/core/core_timing.h
+++ b/src/core/core_timing.h
@@ -23,6 +23,10 @@
 
 namespace CoreTiming {
 
+struct EventType;
+
+using TimedCallback = std::function<void(u64 userdata, int cycles_late)>;
+
 /**
  * CoreTiming begins at the boundary of timing slice -1. An initial call to Advance() is
  * required to end slice -1 and start slice 0 before the first cycle of code is executed.
@@ -30,8 +34,6 @@ namespace CoreTiming {
 void Init();
 void Shutdown();
 
-typedef std::function<void(u64 userdata, int cycles_late)> TimedCallback;
-
 /**
  * This should only be called from the emu thread, if you are calling it any other thread, you are
  * doing something evil
@@ -40,8 +42,6 @@ u64 GetTicks();
 u64 GetIdleTicks();
 void AddTicks(u64 ticks);
 
-struct EventType;
-
 /**
  * Returns the event_type identifier. if name is not unique, it will assert.
  */