Compiling problems

Hello everybody,

the compiler is complaining:
libcompute.c:330: warning: passing argument 1 of e`H5Tcreate' with
different width due to prototype
libcompute.c:331: warning: passing argument 3 of e`H5Tinsert'e with
different width due to prototype

Line 330 and 331 are:

  /* Create the memory data type for gsl_complex */
330: gsl_complex_tid = H5Tcreate (H5T_COMPOUND, sizeof (gsl_complex));
331: H5Tinsert (gsl_complex_tid, "Re", 0, H5T_NATIVE_DOUBLE);
332: H5Tinsert (gsl_complex_tid, "Im", sizeof (double), H5T_NATIVE_DOUBLE);

What does it means? It's not an error, it's just a compiler warning.

franZ

Hi Francesco,

···

On Oct 22, 2010, at 12:27 PM, Francesco Petrogalli wrote:

Hello everybody,

the compiler is complaining:
libcompute.c:330: warning: passing argument 1 of e`H5Tcreate' with
different width due to prototype
libcompute.c:331: warning: passing argument 3 of e`H5Tinsert'e with
different width due to prototype

Line 330 and 331 are:

/* Create the memory data type for gsl_complex */
330: gsl_complex_tid = H5Tcreate (H5T_COMPOUND, sizeof (gsl_complex));
331: H5Tinsert (gsl_complex_tid, "Re", 0, H5T_NATIVE_DOUBLE);
332: H5Tinsert (gsl_complex_tid, "Im", sizeof (double), H5T_NATIVE_DOUBLE);

What does it means? It's not an error, it's just a compiler warning.

  The warning for H5Tinsert() probably just means you need to cast the '0' to '(size_t)0'. The one for H5Tcreate() is unusual though - are you compiling with a C++ compiler? Also, what version of HDF5 are you building against?

  Quincey

Hi Quincey,

       The warning for H5Tinsert() probably just means you need to cast

the '0' to '(size_t)0'. The one for H5Tcreate() is unusual though - are you
compiling with a C++ compiler? Also, what version of HDF5 are you building
against?

OK, the explicit cast to hsize_t remove the warning. For the H5Tcreate()
problem here some output on the machine I am using.
By the way, my code is running correctly (at least it seems to...), so this
is not a problem, I just would like to know why the compiler is complaining
(on my Ubuntu 9.10 machine everything works fine, with the same HDF5
1.8.5patch1)

Thanks,

Francesco

[fxp62@login gen-sky]$ h5cc -show
gcc -L/home/fxp62/usr/lib /home/fxp62/usr/lib/libhdf5_hl.a
/home/fxp62/usr/lib/libhdf5.a -lz -lm -Wl,-rpath -Wl,/home/fxp62/usr/lib

[fxp62@login gen-sky]$ gcc -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-libgcj-multifile
--enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk
--disable-dssi --enable-plugin
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic
--host=x86_64-redhat-linux
Thread model: posix
gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)
[fxp62@login gen-sky]$ h5cc -showconfig
   SUMMARY OF THE HDF5 CONFIGURATION

···

=================================

General Information:
-------------------
  HDF5 Version: 1.8.5-patch1
Configured on: Mon Oct 18 13:27:40 EDT 2010
Configured by: fxp62@login.priv.cwru.edu
Configure mode: production
   Host system: x86_64-unknown-linux-gnu
     Uname information: Linux login.priv.cwru.edu 2.6.18-194.el5 #1 SMP Tue
Mar 16 21:52:39 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
      Byte sex: little-endian
     Libraries:
    Installation point: /home/fxp62/usr

Compiling Options:
------------------
              Compilation Mode: production
                    C Compiler: /usr/bin/gcc ( gcc (GCC) 4.1.2 20080704 )
                        CFLAGS:
                     H5_CFLAGS: -std=c99 -pedantic -Wall -Wextra -Wundef
-Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align
-Wwrite-strings -Wconversion -Waggregate-return -Wstrict-prototypes
-Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
-Wnested-externs -Winline -Wno-long-long -Wfloat-equal
-Wmissing-format-attribute -Wmissing-noreturn -Wpacked
-Wdisabled-optimization -Wformat=2 -Wunreachable-code -Wendif-labels
-Wdeclaration-after-statement -Wold-style-definition -Winvalid-pch
-Wvariadic-macros -Wnonnull -Winit-self -Wmissing-include-dirs
-Wswitch-default -Wswitch-enum -Wunused-macros -Wunsafe-loop-optimizations
-Wc++-compat -Wvolatile-register-var -O3 -fomit-frame-pointer
-finline-functions
                     AM_CFLAGS:
                      CPPFLAGS:
                   H5_CPPFLAGS: -D_POSIX_SOURCE -DNDEBUG -UH5_DEBUG_API
                   AM_CPPFLAGS: -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
-D_BSD_SOURCE
              Shared Libraries: yes
              Static Libraries: yes
Statically Linked Executables: no
                       LDFLAGS:
                    AM_LDFLAGS:
Extra libraries: -lz -lm
      Archiver: ar
Ranlib: ranlib
     Debugged Packages:
   API Tracing: no

Languages:
----------
                       Fortran: no
                           C++: no

Features:
---------
                 Parallel HDF5: no
            High Level library: yes
                  Threadsafety: no
           Default API Mapping: v18
With Deprecated Public Symbols: yes
        I/O filters (external): deflate(zlib)
        I/O filters (internal): shuffle,fletcher32,nbit,scaleoffset
                           MPE: no
                    Direct VFD: no
                       dmalloc: no
Clear file buffers before write: yes
          Using memory checker: no
        Function Stack Tracing: no
                          GPFS: no
     Strict File Format Checks: no
  Optimization Instrumentation: no
      Large File Support (LFS): yes
            H5dump Packed Bits: yes