Commit Graph

371 Commits

Author SHA1 Message Date
Binh-Minh Ribler
32bdd82cc8 [svn-r29782] Purpose: Code improvement
Description:
    - Removed ArrayType::rank and ArrayType::dimensions and modified the methods
      ArrayType::getArrayNDims and ArrayType::getArrayDims to always call the
      C functions to get the rank and dimensions.
    - Overloaded ArrayType::getArrayNDims and ArrayType::getArrayDims to provide
      const version and marked the non-const version deprecated.
Platforms tested:
    Linux/32 2.6 (jam)
    Linux/64 (platypus)
    Darwin (osx1010test)
2016-04-24 10:52:09 -05:00
Binh-Minh Ribler
997392079b [svn-r29766] Description:
- Changed object in catch statements to reference (left over from previous)

Platforms tested:
    Linux/32 2.6 (jam) (very minor)
2016-04-22 15:32:18 -05:00
Binh-Minh Ribler
c37607eb58 [svn-r29759] Purpose: Code improvements
Description:
    - Changed object in catch statements to reference
    - Replaced old-style casts or reinterpret_cast with static_cast
    - Removed unused name H5Library::need_cleanup
    - Removed Exception::printError from documentation
Platforms tested:
    Linux/32 2.6 (jam)
    Linux/64 (platypus)
    Darwin (osx1010test)
2016-04-22 06:22:34 -05:00
Binh-Minh Ribler
20bfdeb2c1 [svn-r29361] Purpose: Correction
Description:
    Replaced static_cast with reinterpret_cast for "void *".
    Removed some commented-out old code.
Platforms tested:
    Linux/32 2.6 (jam)
    Linux/64 (platypus)
    Darwin (osx1010test)
2016-03-08 22:30:02 -05:00
Binh-Minh Ribler
116eed3ebd [svn-r29340] Purpose: Code cleanup
Description:
    - Removed many warnings:
        warning: use of old-style cast
        warning: enumeration value ‘H5D_VIRTUAL’ not handled in switch
        warning: comparison between signed and unsigned
      There are others of the same warnings and they will be taken care of
      in the next release.
    - Made some code reuse between overloads
Platforms tested:
    Linux/32 2.6 (jam)
    Linux/64 (platypus)
    Darwin (osx1010test)
2016-03-08 07:23:54 -05:00
Binh-Minh Ribler
b346cb0599 [svn-r29306] Purpose: Add function
Description:
    Added member function ArrayType::operator= because ArrayType has
    pointer data members.
Platforms tested:
    Linux/32 2.6 (jam)
    Linux/64 (platypus)
    Darwin (osx1010test)
2016-03-07 10:42:30 -05:00
Binh-Minh Ribler
a7ef06d593 [svn-r28906] Description:
Added c++/test/tarray.cpp.
2016-01-15 10:57:00 -05:00
Binh-Minh Ribler
0d68aa89ce [svn-r28905] Purpose: Fix user reported problem
Description:
    User Adam Rosenberger reported a failure when using the member function
    AbstractDs::getArrayType().  This problem was caused by missing
    initialization of the ArrayType's members in some cases.
Solution:
    - Added ArrayType::setArrayInfo() to retrieve rank and dimensions of
      an array and store them in memory for easy access.
    - Re-factored a few functions to use the new function.
    - We'll give him 1.8.16 patch
Platforms tested:
    Linux/32 2.6 (jam)
    Linux/64 (platypus)
    Darwin (osx1010test)
2016-01-15 10:53:33 -05:00
Jerome Soumagne
2094d86461 [svn-r28138] Add first support for _Bool and make hbool_t a "real" _Bool if available
Fix tests accordingly and fix misuse of hbool_t in various places

Fix initialization of H5Pgcpl/ocpl structs in property decoding routines

Tested on:
    Linux/32 (jam)
    Linux/64 (platypus)
    Linux/PPC64 (ostrich)
    MacOSX/64 10.11
2015-10-20 01:28:17 -05:00
Binh-Minh Ribler
f17eb1e610 [svn-r27961] Purpose: Partial fix of issues HDFFV-9169 and HDFFV-9167
Description:
    Added wrappers for H5P[s/g]et_attr_phase_change and H5P[s/g]et_attr_creation_order

    // Sets attribute storage phase change thresholds.
    void setAttrPhaseChange(unsigned max_compact = 8, unsigned min_dense = 6)

    // Gets attribute storage phase change thresholds.
    void getAttrPhaseChange(unsigned& max_compact, unsigned& min_dense)

    // Sets tracking and indexing of attribute creation order.
    void setAttrCrtOrder(unsigned crt_order_flags)

    // Gets tracking and indexing settings for attribute creation order.
    unsigned getAttrCrtOrder()

Platforms tested:
    Linux/32 2.6 (jam)
    Linux/64 (platypus)
    Darwin (osx1010test)
2015-10-05 23:31:58 -05:00
Dana Robinson
9af344117c [svn-r27794] Reintegration merge of features/autotools_rework branch with trunk
NOTES:

- Developers will have to run autogen.sh before building with the autotools.

- autogen.sh takes the -p option to mimic the old bin/reconfigure behavior.

- The generated error, overflow and version headers have been left in place.

- The generated H5LT parser code has also been left in place.

- There are no changes for CMake users at this time.

Tested on: h5committest
2015-09-15 15:38:57 -05:00
Quincey Koziol
1023374492 [svn-r27768] Description:
Complete revamp of package initialization/shutdown mechanism in the library.
Each package now has a single init/term routine.

    This new way should avoid packages being re-initialized during library
shutdown and is also be _much_ more proactive about giving feedback for
resource leaks internal to the library.

    Introduces a new "module" header file for packages in the library
(e.g src/H5Fmodule.h) which sets up some necessary package configuration macros
for the FUNC_ENTER/LEAVE macros.  (The VFL drivers have their own slightly
modified version of this header, src/H5FDdrvr_module.h)

    Also cleaned up a bunch of resources leaks all across the library and tests,
along with addressing many warnings, as I encountered them.

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    Linux/64 3.10.x (kituo) w/serial & parallel
    Linux/64 2.6.x (ostrich) w/serial
2015-09-13 22:58:59 -05:00
Dana Robinson
59aa015d9f [svn-r27638] Merged r27500-27631 from trunk. 2015-08-31 23:36:17 -05:00
Scot Breitenfeld
e6f9fc5f7f [svn-r27625] Added preprocessor commands for PGI compiler.
tested: h5committest
2015-08-31 13:49:17 -05:00
Dana Robinson
2e6100fb23 [svn-r27572] Removed VMS-specific code from the library.
The only remaining code consists of a few floating-point tests
that rely on pre-generated and checked-in VMS files. These have
been left alone, even though they will not be possible to
recreate, since testing VMS float behavior is still important.

Tested on: h5committest
2015-08-24 15:19:39 -05:00
Scot Breitenfeld
d06fee7bd2 [svn-r27517] Removed all perl scripts from configure.
Tested: h5committest
2015-08-17 16:12:03 -05:00
Dana Robinson
c27d180848 [svn-r27507] Merge of r27237-27500 from the trunk.
Tested w/ h5committest

NOTES: - The manifest may still be messed up.
       - Cmake fails since the dual binary work needs to be merged with
         this repo's CMake externals.
2015-08-14 14:58:54 -05:00
Scot Breitenfeld
caf0e7692a [svn-r27493] Trying again to merge the F2003_v1.10 branch to the trunk.
Tested: h5committest --PASSED--
2015-08-11 09:35:30 -05:00
Scot Breitenfeld
3b4696ccd1 [svn-r27489] reverted merge of branch 2015-08-10 20:22:33 -05:00
Scot Breitenfeld
a9bef45c75 [svn-r27470] svn merge -r27425:27460 https://svn.hdfgroup.uiuc.edu/hdf5/trunk 2015-08-05 16:35:30 -05:00
Allen Byrne
9e2434625d [svn-r27469] Merge from trunk with dual-binary CMake code.
Tested: local linux with CMake
2015-08-05 16:01:07 -05:00
Dana Robinson
fb27787c2a [svn-r27222] Merge of r27035-27221 from the trunk.
Tested on 64-bit linux VM:
    Serial: C++ and Fortran 2003
    Parallel: Fortran
2015-06-17 06:48:34 -05:00
Scot Breitenfeld
85bcb77904 [svn-r27221] Reworked Fortran autools REAL KIND detection. 2015-06-16 16:47:00 -05:00
Scot Breitenfeld
f2d14c76b8 [svn-r27186] added fix for jam with promoted reals and integers 2015-06-10 14:15:08 -05:00
Scot Breitenfeld
62401ac7c6 [svn-r27167] more DT fixes 2015-06-09 12:05:09 -05:00
Scot Breitenfeld
32703c9fc5 [svn-r27164] various bug fixes for DT 2015-06-08 16:13:15 -05:00
Scot Breitenfeld
8641814c4e [svn-r27154] fixed issue with mis-matching long double between Fortran and C 2015-06-05 17:17:13 -05:00
Scot Breitenfeld
043173a689 [svn-r27151] fixed __float128 errors 2015-06-04 15:26:02 -05:00
Scot Breitenfeld
4d500d4902 [svn-r27140] fixed interger*16 support 2015-06-03 09:13:58 -05:00
Scot Breitenfeld
f486fe1a49 [svn-r27137] svn merge -r27115:27135 https://svn.hdfgroup.uiuc.edu/hdf5/trunk 2015-06-02 09:46:51 -05:00
Mohamad Chaarawi
fc45d5fcb0 [svn-r27133] - Add a new attribute function characterstic for format:
* H5_ATTR_FORMAT(X,Y,Z)  __attribute__((format(X, Y, Z)))
- Rename UNUSED attribute characterstic to H5_ATTR_UNUSED.
- Rename NORETURN attribute characterstic to H5_ATTR_NORETURN

tested with h5committest.
2015-06-01 14:38:09 -05:00
Scot Breitenfeld
52e5579fba [svn-r27122] removed dependency on generatored fortran source code 2015-05-28 11:53:15 -05:00
Scot Breitenfeld
244784ab2c [svn-r27115] Moved testing KINDs and SIZEOFs to configure. 2015-05-27 17:07:18 -05:00
Dana Robinson
984ecb72c2 [svn-r27038] Merge of r26393-27031 from the trunk.
Tested on 64-bit linux VM w/ C++ and Fortran 2003
2015-05-07 16:05:14 -05:00
Scot Breitenfeld
5e6d18e5be [svn-r26869] removed the --enable-fortran2003 option, it is now just --enable-fortran 2015-04-21 13:33:25 -05:00
Scot Breitenfeld
0cc9b0c79f [svn-r26825] Added include for preprocessing fortran files with configure definitions 2015-04-16 13:36:34 -05:00
Larry Knox
3032f3adf3 [svn-r26711] Recommitting revisions 26669 and 26670, removing VPATH and redundant /usr/include and lib in fcompile and link flags checks, now that I have run reconfigure.
Also changed paths to h5cc, etc. in scripts to run installed examples from relative paths to absolute paths.

Tested with h5committest.
2015-04-02 16:07:53 -05:00
Binh-Minh Ribler
f6d9d1fdc8 [svn-r26695] Purpose: Fixed HDFFV-7947 (cont.)
Description:
    - Put back the UNUSED parameters in dsets test because the change to remove
      the warning last time caused failure in setting filter, in turn, caused
      failure in the test with such obscure/unrelated errors!
    - Added incRefCount() to other constructors that missed from last time.
Platforms tested:
    Linux/64 (platypus)
    Linux/32 2.6 (jam)
    SunOS 5.11 (emu)
2015-04-01 13:52:05 -05:00
Binh-Minh Ribler
ea029945f5 [svn-r26667] Purpose: Fixed HDFFV-8766
Description:
    Per user Jason Newton request, the following constructor is added:
        H5File(hid_t existing_id);
    Also, fixed H5File::openFile to close current file first before re-using
    the object.
Platforms tested:
    Linux/64 (platypus)
    Linux/32 2.6 (jam gnu and Intel 15.0)
    SunOS 5.11 (emu)
2015-03-30 16:57:37 -05:00
Allen Byrne
45577d5693 [svn-r26660] HDFFV-9131: autotols rework
Remove CXX_CONDITIONAL
remove unneeded/obsolete sections.

h5commtitest
2015-03-30 13:55:21 -05:00
Binh-Minh Ribler
98d1c2d9a9 [svn-r26655] Purpose: Fixed HDFFV-7947
Description:
    When copy constructor or constructor that takes an existing id is invoked,
    the C ref counter stays the same but there is an extra C++ object which
    later is destroyed and may cause the HDF5 id to be closed prematurely. The
    C++ library needs to increment the ref counter in these situations, so that
    the C library will not close the id when it is still being referenced.

    However, the incrementing of ref count left some objects opened at the end
    of the program, perhaps, due to compiler's optimization on cons/destructors.    The constructor, that takes an existing id, needs to increment the counter
    but it seems that the matching destructor wasn't invoked.  The workaround
    is to have a function for each class that has "id" that only sets the id
    and not increment the ref count for the library to use in these situations.
    These functions are "friend" and not public.

    The friend functions are:
        void f_Attribute_setId(Attribute *, hid_t)
        void f_DataSet_setId(DataSet *, hid_t)
        void f_DataSpace_setId(DataSpace *, hid_t)
        void f_DataType_setId(DataType *, hid_t)
Platforms tested:
    Linux/64 (platypus)
    Linux/32 2.6 (jam gnu and Intel 15.0)
    SunOS 5.11 (emu)
2015-03-30 12:58:44 -05:00
Binh-Minh Ribler
39fb0401a0 [svn-r26643] Purpose: Adding new wrappers (HDFFR-9167 partially)
Description:
    Added wrappers for C functions H5P[s/g]et_libver_bounds and wrappers
    for getting object header version

      // Sets bounds on versions of library format to be used when creating
      // or writing objects.
      void setLibverBounds(H5F_libver_t libver_low, H5F_libver_t libver_high) const;

      // Gets the current settings for the library version format bounds.
      void getLibverBounds(H5F_libver_t& libver_low, H5F_libver_t& libver_high) const;

      // Returns the object header version of an object in a file or group,
      // given the object's name.
      unsigned childObjVersion(const char* objname) const;
      unsigned childObjVersion(const H5std_string& objname) const;

Platforms tested:
    Linux/64 (platypus)
    Linux/32 2.6
    SunOS 5.11
2015-03-28 23:37:28 -05:00
Binh-Minh Ribler
72d896f709 [svn-r26640] Purpose: Fix bugs
Description:
    - Changed DataType::operator= to simply copy the id of rhs instead of
      calling H5Tcopy because, when the operator= is invoked, a different
      datatype id is created and it won't have the same characteristics as
      rhs', specifically, if the rhs represents a named datatype, "this"
      would still be a transient datatype.
    - Added a DataType constructor that takes a PredType object, and this
      constructor will cause H5Tcopy to generate another datatype id, from a
      predefined datatype.
    - Fixed various mistakes in tests.
Platforms tested:
    Linux/64 (platypus)
    Linux/32 2.6 (jam/gnu and jam/icc 15)
    SunOS 5.11 (emu development/production)
2015-03-27 23:15:43 -05:00
Allen Byrne
451a91e53b [svn-r26594] Merge macros and fortran changes from dual_binary feature.
Tested: local linux
2015-03-25 17:08:46 -05:00
Jerome Soumagne
1cd7c16a9d [svn-r26509] Run reconfigure after merges from autotools_rework branch. 2015-03-20 14:15:51 -05:00
Binh-Minh Ribler
3b90bca561 [svn-r26458] Purpose: Fix warnings HDFFV-8658
Description:
    Fixed many type conversion warnings and unused variables.
Platforms tested:
    Linux/64 (platypus)
    Linux/32 2.6 (jam)
    SunOS 5.11 (emu)
2015-03-15 01:49:20 -05:00
Dana Robinson
bdb7ec3497 [svn-r26422] Fixes autogen.sh errors caused by r26410 that produced:
CXX_SHARED_CONDITIONAL does not appear in AM_CONDITIONAL

This was due to a removed AM_CONDITIONAL macro in configure.ac.

The CXX_SHARED_CONDITIONAL code was removed from the Makefile.am
files. Additionally, the C++ shared library build settings field in 
libhdf5.settings file was updated.

Tested on: local linux VM w/ C++
           --enable-shared      --enable-static
           --enable-shared      --disable-static
           --disable-shared     --enable-static
2015-03-10 22:49:12 -05:00
Dana Robinson
7462a7ef1c [svn-r26329] Merge of r26069, r26070, and r26072 from the features/autotools_rework
branch.

Removed the configure option that allows selective disabling of individual
internal filters (fletcher32, shuffle, etc.).

This feature mucked up the code with a lot of #ifdefs, saved very little space,
and was not scalable to a general scheme for library size reduction. We've
decided to remove the feature while we investigate a more general scheme for
decreasing the library size.

Part of: HDFFV-9086

Tested on: h5committest
2015-02-27 07:50:38 -05:00
Mohamad Chaarawi
c4044e0c85 [svn-r26303] remove files with .clog2 extension generated by MPE when doing make clean. 2015-02-25 13:48:31 -05:00
Dana Robinson
c07d803659 [svn-r26274] Merge of r26096 to r26271 from trunk.
Tested on: jam - serial: C++/Fortran
                 parallel: Fortran
2015-02-22 07:16:30 -05:00