Package: libatomic-ops-dev
Version: 1.2+cvs20091005-1
Severity: important

Hi again,

Thanks to your hint about AO_REQUIRE_CAS define, the armel build of firebird2.5 
reached to the point where it needs to link to libatomic_ops.

Sparc wasn't so lucky. The build stops at:

  In file included from /usr/include/atomic_ops.h:215,
                 from ../src/include/../common/classes/fb_atomic.h:476,
                 from ../src/include/../common/classes/alloc.h:43,
                 from ../src/include/../common/classes/fb_string.h:39,
                 from ../src/jrd/../jrd/os/path_utils.h:31,
                 from ../src/jrd/gds.cpp:47:
  /usr/include/atomic_ops/sysdeps/gcc/sparc.h: In function ‘AO_BYTE_TS_val
    AO_test_and_set_full(volatile unsigned char*)’:
  /usr/include/atomic_ops/sysdeps/gcc/sparc.h:37: error: invalid conversion
    from ‘int’ to ‘AO_BYTE_TS_val’
  make[4]: *** [../temp/boot/jrd/gds.o] Error 1

Looking at sparc.h, it appears that either the 'oldval' variable defined on 
line 32 should be of type 'AO_TS_VAL_t' instead of 'int', or some casting is 
needed. Strangely, if I look at this file on my amd64 system, oldval is defined 
as AO_TS_VAL_t.

Minimal test program for reproducing (make sure you try it on sparc):

------------[ sparc.cpp ]-------------
  #include "atomic_ops.h"
  int main(int argc, char** argv)
  {
      volatile AO_TS_t v;
      AO_test_and_set_full(&v);
      return 0;
  }
--------------------------------------

$ g++ sparc.c
In file included from /usr/include/atomic_ops.h:215,
                 from sparc.cpp:1:
/usr/include/atomic_ops/sysdeps/gcc/sparc.h: In function ‘AO_BYTE_TS_val 
AO_test_and_set_full(volatile unsigned char*)’:
/usr/include/atomic_ops/sysdeps/gcc/sparc.h:37: error: invalid conversion from 
‘int’ to ‘AO_BYTE_TS_val’

$ g++ --version
g++ (Debian 4.4.2-9) 4.4.3 20100108 (prerelease)

$ uname -a
Linux smetana 2.6.26-2-sparc64-smp #1 SMP Thu Nov 5 03:34:29 UTC 2009 sparc64 
GNU/Linux

Thank you in advance,
    dam



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to