Weird syntax highlighting behaviour in some C files

I have a strange issue in atom with syntax highlighting in some C files where I open a .c file and no syntax highlighting is done (all the code is white). When I change the lines some get colored and some don’t, some stay colored and some get back to white. It’s hard to explain, so I recorded a video: (http://patsite.de/atom_syntax.mp4).

Here is the code:

// Watchdog control ===========================================================

#include "hal/watchdog.h"
#include "config.h"

// ============================================================================
/// @addtogroup PORTS
/// @{

#ifdef PLATFORM_LEGACY
#define Enable()      WDKEY = 0x05
#define Disable()     WDKEY = 0x55
/// @TODO: why two watch dog resets?
#define Reset()       WDRST = 0x7c
#define ResetX()      WDRST = 0x10
#else
#warning watch dog missing
#define Enable()
#define Disable()
#define Reset()
#define ResetX()
#endif

/// @}

// public watchdog control methods ============================================

void I10ms_WatchDog( void ) { ResetX(); }
void WatchDogEnable( void ) { Enable(); }
void WatchDogDisable( void ) { Disable(); }
void WatchDogReset( void ) { Reset(); }