Conditional library inclusion

What is confusing about that statement? It is a compile time if/then/else...

#ifdef USE_SOFTWARE_SERIAL
#include "SoftwareSerial.h"
SoftwareSerial serial = SoftwareSerial(A0);
#define myLibSerial serial
#else
#define myLibSerial Serial
#endif

void writeDataString( char* s, DateTime now) {
  myLibSerial.print(s);
  myLibSerial.println(now);
}