=== modified file 'storage/falcon/Interlock.h'
--- a/storage/falcon/Interlock.h	2008-05-03 12:41:05 +0000
+++ b/storage/falcon/Interlock.h	2008-05-05 11:24:49 +0000
@@ -89,7 +89,7 @@
 	   Need to perform explicit type casting to make the compiler happy.
 	*/
 	return COMPARE_EXCHANGE((volatile long *) target, compare, exchange);
-#elif (defined(__i386) || defined(__x86_64__)) && !defined(__sun)
+#elif (defined(__i386) || defined(__x86_64__)) && defined(__GNUC__)
 	char ret;
 	__asm__ __volatile__ (
 		"lock\n\t"
@@ -142,7 +142,7 @@
        We are running Sun Studio on SPARC or x86
        Todo: get assembler version of atomic_cas_uint().
      */
-#elif defined(__sparcv8) || defined(__sparcv9) || defined(__sun)
+#elif (defined(__sparcv8) || defined(__sparcv9) || defined(__sun)) && !defined(__GNUC__)
 #if defined(__SunOS_5_10)
     return (compare == atomic_cas_uint((volatile uint_t *)target, compare, exchange));
 #else
@@ -159,7 +159,7 @@
 {
 #ifdef _WIN32
 	return COMPARE_EXCHANGE_POINTER(target, compare, exchange);
-#elif (defined(__i386) || defined(__x86_64__)) && !defined(__sun)
+#elif (defined(__i386) || defined(__x86_64__)) && defined(__GNUC__)
 	char ret;
 	__asm__ __volatile__ (
 		"lock\n\t"
@@ -252,7 +252,7 @@
        We are running Sun Studio on SPARC or x86
        Todo: get assembler version of atomic_cas_ptr().
      */
-#elif defined(__sparcv8) || defined(__sparcv9) || defined(__sun)
+#elif (defined(__sparcv8) || defined(__sparcv9) || defined(__sun)) && !defined(__GNUC__)
 #if defined(__SunOS_5_10)
     return (char)(compare == atomic_cas_ptr(target, compare, exchange));
 #else
@@ -269,7 +269,7 @@
 {
 #ifdef _WIN32
 	return InterlockedIncrement ((long*) ptr);
-#elif (defined(__i386) || defined(__x86_64__)) && !defined(__sun)
+#elif (defined(__i386) || defined(__x86_64__)) && defined(__GNUC__)
 	INTERLOCK_TYPE ret = 1;
 	__asm__ __volatile__ (
 		"lock\n\t"
@@ -310,7 +310,7 @@
 {
 #ifdef _WIN32
 	return InterlockedDecrement ((long*) ptr);
-#elif (defined(__i386) || defined(__x86_64__)) && !defined(__sun)
+#elif (defined(__i386) || defined(__x86_64__)) && defined(__GNUC__)
 	INTERLOCK_TYPE ret = -1;
 	__asm__ __volatile__ (
 		"lock\n\t"
@@ -352,7 +352,7 @@
 {
 #ifdef _WIN32
 	return InterlockedExchangeAdd((long*) addend, value);
-#elif (defined(__i386) || defined(__x86_64__)) && !defined(__sun)
+#elif (defined(__i386) || defined(__x86_64__)) && defined(__GNUC__)
 	INTERLOCK_TYPE ret = value;
 	__asm__ __volatile__ (
 		"lock\n\t"
@@ -394,7 +394,7 @@
 {
 #ifdef _WIN32
 	return InterlockedExchange((long*) addend, value);
-#elif (defined(__i386) || defined(__x86_64__)) && !defined(__sun)
+#elif (defined(__i386) || defined(__x86_64__)) && defined(__GNUC__)
 	long ret = value;
 	__asm__ __volatile__ (
 		"lock\n\t"

=== modified file 'storage/falcon/StorageVersion.h'
--- a/storage/falcon/StorageVersion.h	2008-05-03 12:41:05 +0000
+++ b/storage/falcon/StorageVersion.h	2008-05-05 11:24:49 +0000
@@ -14,5 +14,5 @@
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
 
 
-#define FALCON_VERSION	"T1.2-0"
-#define FALCON_DATE		"02 May, 2008"
+#define FALCON_VERSION	"T1.2-1"
+#define FALCON_DATE		"04 May, 2008"



