Add a macro GCC_VERSION and use it to control code paths.

Code paths that work on lower version of GCC are required because
Mac OS will never move beyond GCC 4.2. I added the code paths so
that Mac builds can pass.

Change-Id: I4a3340355133dff4a5107b94970bc809d9de264e
diff --git a/src/assembler_x86.h b/src/assembler_x86.h
index b1d34d3..2f293e4 100644
--- a/src/assembler_x86.h
+++ b/src/assembler_x86.h
@@ -28,7 +28,10 @@
  private:
   const int32_t value_;
 
+  // TODO: Remove the #if when Mac OS build server no longer uses GCC 4.2.*.
+#if GCC_VERSION >= 40300
   DISALLOW_COPY_AND_ASSIGN(Immediate);
+#endif
 };
 
 
@@ -116,7 +119,10 @@
 
   friend class X86Assembler;
 
+  // TODO: Remove the #if when Mac OS build server no longer uses GCC 4.2.*.
+#if GCC_VERSION >= 40300
   DISALLOW_COPY_AND_ASSIGN(Operand);
+#endif
 };
 
 
@@ -192,7 +198,10 @@
  private:
   Address() {}
 
+  // TODO: Remove the #if when Mac OS build server no longer uses GCC 4.2.*.
+#if GCC_VERSION >= 40300
   DISALLOW_COPY_AND_ASSIGN(Address);
+#endif
 };