summaryrefslogtreecommitdiffstats
path: root/c++
diff options
context:
space:
mode:
authorVailin Choi <vchoi@hdfgroup.org>2015-04-21 14:58:43 (GMT)
committerVailin Choi <vchoi@hdfgroup.org>2015-04-21 14:58:43 (GMT)
commit65b3bc2a937337239ceede5e39261c6b2ba4dc69 (patch)
treec6139980f34978fefe3fad3c756d4916f4d7d389 /c++
parent3f36df51d845a93e94fff264fa22ad60a71db754 (diff)
downloadhdf5-65b3bc2a937337239ceede5e39261c6b2ba4dc69.zip
hdf5-65b3bc2a937337239ceede5e39261c6b2ba4dc69.tar.gz
hdf5-65b3bc2a937337239ceede5e39261c6b2ba4dc69.tar.bz2
[svn-r26861] Bring revisions #26401 - #26459 from trunk to revise_chunks.
h5committested.
Diffstat (limited to 'c++')
-rw-r--r--c++/src/H5AbstractDs.cpp13
-rw-r--r--c++/src/H5AbstractDs.h16
-rw-r--r--c++/src/H5Attribute.cpp10
-rw-r--r--c++/src/H5DataSet.cpp10
-rw-r--r--c++/src/H5DataSpace.cpp2
-rw-r--r--c++/src/H5DataType.cpp2
-rw-r--r--c++/src/H5Exception.cpp48
-rw-r--r--c++/src/H5File.cpp8
-rw-r--r--c++/src/H5Group.cpp10
-rw-r--r--c++/src/H5IdComponent.cpp20
-rw-r--r--c++/src/H5IdComponent.h9
-rw-r--r--c++/src/H5Location.cpp19
-rw-r--r--c++/src/H5Location.h10
-rw-r--r--c++/src/H5Object.cpp29
-rw-r--r--c++/src/H5Object.h13
-rw-r--r--c++/src/H5PropList.cpp2
-rw-r--r--c++/src/Makefile.in2
-rw-r--r--c++/test/dsets.cpp12
-rw-r--r--c++/test/tattr.cpp52
-rw-r--r--c++/test/tfilter.cpp12
-rw-r--r--c++/test/tobject.cpp4
-rw-r--r--c++/test/trefer.cpp74
-rw-r--r--c++/test/ttypes.cpp2
-rw-r--r--c++/test/tvlstr.cpp40
24 files changed, 255 insertions, 164 deletions
diff --git a/c++/src/H5AbstractDs.cpp b/c++/src/H5AbstractDs.cpp
index e6cacf9..0e6ac00 100644
--- a/c++/src/H5AbstractDs.cpp
+++ b/c++/src/H5AbstractDs.cpp
@@ -40,6 +40,12 @@ AbstractDs::AbstractDs(){}
// Function: AbstractDs default constructor
///\brief Creates an AbstractDs instance using an existing id.
// Programmer Binh-Minh Ribler - 2000
+//
+// *** Deprecation warning ***
+// This constructor is no longer appropriate because the data member "id" had
+// been moved to the sub-classes. It will be removed in 1.10 release. If its
+// removal does not raise any problems in 1.10, it will be removed from 1.8 in
+// subsequent releases.
//--------------------------------------------------------------------------
AbstractDs::AbstractDs(const hid_t ds_id){}
@@ -47,8 +53,13 @@ AbstractDs::AbstractDs(const hid_t ds_id){}
// Function: AbstractDs copy constructor
///\brief Copy constructor: makes a copy of the original AbstractDs object.
// Programmer Binh-Minh Ribler - 2000
+// *** Deprecation warning ***
+// This constructor is no longer appropriate because the data member "id" had
+// been moved to the sub-classes. It is removed from 1.8.15 because it is
+// a noop and it can be generated by the compiler if needed.
//--------------------------------------------------------------------------
-AbstractDs::AbstractDs(const AbstractDs& original){}
+//--------------------------------------------------------------------------
+// AbstractDs::AbstractDs(const AbstractDs& original){}
//--------------------------------------------------------------------------
// Function: AbstractDs::getTypeClass
diff --git a/c++/src/H5AbstractDs.h b/c++/src/H5AbstractDs.h
index 01d05b8..8ed7967 100644
--- a/c++/src/H5AbstractDs.h
+++ b/c++/src/H5AbstractDs.h
@@ -70,9 +70,6 @@ class H5_DLLCPP AbstractDs {
///\brief Returns this class name.
virtual H5std_string fromClass() const = 0;
- // Copy constructor
- AbstractDs( const AbstractDs& original );
-
// Destructor
virtual ~AbstractDs();
@@ -80,8 +77,17 @@ class H5_DLLCPP AbstractDs {
// Default constructor
AbstractDs();
- // Constructor that takes an attribute id or a dataset id.
- AbstractDs( const hid_t ds_id );
+ // *** Deprecation warning ***
+ // The following two constructors are no longer appropriate after the
+ // data member "id" had been moved to the sub-classes.
+ // The copy constructor is a noop and is removed in 1.8.15 and the
+ // other will be removed from 1.10 release, and then from 1.8 if its
+ // removal does not raise any problems in two 1.10 releases.
+
+ AbstractDs(const hid_t h5_id);
+
+ // Copy constructor
+ // AbstractDs( const AbstractDs& original );
private:
// This member function is implemented by DataSet and Attribute.
diff --git a/c++/src/H5Attribute.cpp b/c++/src/H5Attribute.cpp
index a9e928d..6b5c753 100644
--- a/c++/src/H5Attribute.cpp
+++ b/c++/src/H5Attribute.cpp
@@ -392,10 +392,12 @@ H5std_string Attribute::getName() const
//--------------------------------------------------------------------------
H5std_string Attribute::getName(size_t len) const
{
- H5std_string attr_name;
- ssize_t name_size = getName(attr_name, len);
- return(attr_name);
- // let caller catch exception if any
+ H5std_string attr_name;
+ ssize_t name_size = getName(attr_name, len);
+ if (name_size < 0)
+ return("");
+ else
+ return(attr_name);
}
//--------------------------------------------------------------------------
diff --git a/c++/src/H5DataSet.cpp b/c++/src/H5DataSet.cpp
index 6728264..0374d95 100644
--- a/c++/src/H5DataSet.cpp
+++ b/c++/src/H5DataSet.cpp
@@ -52,7 +52,7 @@ namespace H5 {
///\brief Default constructor: creates a stub DataSet.
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-DataSet::DataSet() : AbstractDs(), H5Object(), id(H5I_INVALID_HID) {}
+DataSet::DataSet() : H5Object(), AbstractDs(), id(H5I_INVALID_HID) {}
//--------------------------------------------------------------------------
// Function: DataSet overloaded constructor
@@ -60,7 +60,7 @@ DataSet::DataSet() : AbstractDs(), H5Object(), id(H5I_INVALID_HID) {}
///\param existing_id - IN: Id of an existing dataset
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-DataSet::DataSet(const hid_t existing_id) : AbstractDs(), H5Object()
+DataSet::DataSet(const hid_t existing_id) : H5Object(), AbstractDs()
{
id = existing_id;
}
@@ -71,7 +71,7 @@ DataSet::DataSet(const hid_t existing_id) : AbstractDs(), H5Object()
///\param original - IN: DataSet instance to copy
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-DataSet::DataSet(const DataSet& original) : AbstractDs(original), H5Object(original)
+DataSet::DataSet(const DataSet& original) : H5Object(), AbstractDs()
{
id = original.getId();
incRefCount(); // increment number of references to this id
@@ -95,7 +95,7 @@ DataSet::DataSet(const DataSet& original) : AbstractDs(original), H5Object(origi
// Jul, 2008
// Added for application convenience.
//--------------------------------------------------------------------------
-DataSet::DataSet(const H5Location& loc, const void* ref, H5R_type_t ref_type, const PropList& plist) : AbstractDs(), H5Object(), id(H5I_INVALID_HID)
+DataSet::DataSet(const H5Location& loc, const void* ref, H5R_type_t ref_type, const PropList& plist) : H5Object(), AbstractDs(), id(H5I_INVALID_HID)
{
id = H5Location::p_dereference(loc.getId(), ref, ref_type, plist, "constructor - by dereferenced");
}
@@ -114,7 +114,7 @@ DataSet::DataSet(const H5Location& loc, const void* ref, H5R_type_t ref_type, co
// Jul, 2008
// Added for application convenience.
//--------------------------------------------------------------------------
-DataSet::DataSet(const Attribute& attr, const void* ref, H5R_type_t ref_type, const PropList& plist) : AbstractDs(), H5Object(), id(H5I_INVALID_HID)
+DataSet::DataSet(const Attribute& attr, const void* ref, H5R_type_t ref_type, const PropList& plist) : H5Object(), AbstractDs(), id(H5I_INVALID_HID)
{
id = H5Location::p_dereference(attr.getId(), ref, ref_type, plist, "constructor - by dereference");
}
diff --git a/c++/src/H5DataSpace.cpp b/c++/src/H5DataSpace.cpp
index 20b4e5e..761a454 100644
--- a/c++/src/H5DataSpace.cpp
+++ b/c++/src/H5DataSpace.cpp
@@ -93,7 +93,7 @@ DataSpace::DataSpace(const hid_t existing_id) : IdComponent()
///\param original - IN: DataSpace object to copy
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-DataSpace::DataSpace(const DataSpace& original) : IdComponent(original)
+DataSpace::DataSpace(const DataSpace& original) : IdComponent()
{
id = original.getId();
incRefCount(); // increment number of references to this id
diff --git a/c++/src/H5DataType.cpp b/c++/src/H5DataType.cpp
index a435b4e..c4b1694 100644
--- a/c++/src/H5DataType.cpp
+++ b/c++/src/H5DataType.cpp
@@ -134,7 +134,7 @@ DataType::DataType(const Attribute& attr, const void* ref, H5R_type_t ref_type,
///\brief Copy constructor: makes a copy of the original DataType object.
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-DataType::DataType(const DataType& original) : H5Object(original)
+DataType::DataType(const DataType& original) : H5Object()
{
id = original.getId();
incRefCount(); // increment number of references to this id
diff --git a/c++/src/H5Exception.cpp b/c++/src/H5Exception.cpp
index f153c92..fb1e42e 100644
--- a/c++/src/H5Exception.cpp
+++ b/c++/src/H5Exception.cpp
@@ -35,11 +35,11 @@ Exception::Exception() : detail_message(""), func_name("") {}
// Function: Exception overloaded constructor
///\brief Creates an exception with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-Exception::Exception(const H5std_string& func_name, const H5std_string& message) : detail_message(message), func_name(func_name) {}
+Exception::Exception(const H5std_string& func, const H5std_string& message) : detail_message(message), func_name(func) {}
//--------------------------------------------------------------------------
// Function: Exception copy constructor
@@ -350,10 +350,10 @@ FileIException::FileIException():Exception(){}
// Function: FileIException overloaded constructor
///\brief Creates a FileIException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-FileIException::FileIException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+FileIException::FileIException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: FileIException destructor
///\brief Noop destructor.
@@ -373,10 +373,10 @@ GroupIException::GroupIException():Exception(){}
// Function: GroupIException overloaded constructor
///\brief Creates a GroupIException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-GroupIException::GroupIException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+GroupIException::GroupIException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: GroupIException destructor
///\brief Noop destructor.
@@ -396,10 +396,10 @@ DataSpaceIException::DataSpaceIException():Exception(){}
// Function: DataSpaceIException overloaded constructor
///\brief Creates a DataSpaceIException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-DataSpaceIException::DataSpaceIException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+DataSpaceIException::DataSpaceIException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: DataSpaceIException destructor
///\brief Noop destructor.
@@ -419,10 +419,10 @@ DataTypeIException::DataTypeIException():Exception(){}
// Function: DataTypeIException overloaded constructor
///\brief Creates a DataTypeIException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-DataTypeIException::DataTypeIException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+DataTypeIException::DataTypeIException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: DataTypeIException destructor
///\brief Noop destructor.
@@ -442,10 +442,10 @@ PropListIException::PropListIException():Exception(){}
// Function: PropListIException overloaded constructor
///\brief Creates a PropListIException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-PropListIException::PropListIException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+PropListIException::PropListIException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: PropListIException destructor
///\brief Noop destructor.
@@ -465,10 +465,10 @@ DataSetIException::DataSetIException():Exception(){}
// Function: DataSetIException overloaded constructor
///\brief Creates a DataSetIException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-DataSetIException::DataSetIException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+DataSetIException::DataSetIException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: DataSetIException destructor
///\brief Noop destructor.
@@ -488,10 +488,10 @@ AttributeIException::AttributeIException():Exception(){}
// Function: AttributeIException overloaded constructor
///\brief Creates an AttributeIException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-AttributeIException::AttributeIException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+AttributeIException::AttributeIException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: AttributeIException destructor
///\brief Noop destructor.
@@ -511,10 +511,10 @@ ReferenceException::ReferenceException():Exception(){}
// Function: ReferenceException overloaded constructor
///\brief Creates a ReferenceException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-ReferenceException::ReferenceException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+ReferenceException::ReferenceException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: ReferenceException destructor
///\brief Noop destructor.
@@ -534,10 +534,10 @@ LibraryIException::LibraryIException():Exception(){}
// Function: LibraryIException overloaded constructor
///\brief Creates a LibraryIException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-LibraryIException::LibraryIException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+LibraryIException::LibraryIException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: LibraryIException destructor
///\brief Noop destructor.
@@ -557,10 +557,10 @@ LocationException::LocationException():Exception(){}
// Function: LocationException overloaded constructor
///\brief Creates a LocationException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-LocationException::LocationException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+LocationException::LocationException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: LocationException destructor
///\brief Noop destructor.
@@ -580,10 +580,10 @@ IdComponentException::IdComponentException(): Exception() {}
// Function: IdComponentException overloaded constructor
///\brief Creates a IdComponentException with the name of the function,
/// in which the failure occurs, and an optional detailed message.
-///\param func_name - IN: Name of the function where failure occurs
+///\param func - IN: Name of the function where failure occurs
///\param message - IN: Message on the failure
//--------------------------------------------------------------------------
-IdComponentException::IdComponentException(const H5std_string& func_name, const H5std_string& message) : Exception(func_name, message) {}
+IdComponentException::IdComponentException(const H5std_string& func, const H5std_string& message) : Exception(func, message) {}
//--------------------------------------------------------------------------
// Function: IdComponentException destructor
///\brief Noop destructor.
diff --git a/c++/src/H5File.cpp b/c++/src/H5File.cpp
index 45e08b2..e0a0da5 100644
--- a/c++/src/H5File.cpp
+++ b/c++/src/H5File.cpp
@@ -50,7 +50,7 @@ namespace H5 {
///\brief Default constructor: creates a stub H5File object.
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-H5File::H5File() : H5Location(), id(H5I_INVALID_HID) {}
+H5File::H5File() : H5Location(), CommonFG(), id(H5I_INVALID_HID) {}
//--------------------------------------------------------------------------
// Function: H5File overloaded constructor
@@ -86,7 +86,7 @@ H5File::H5File() : H5Location(), id(H5I_INVALID_HID) {}
// to catch then re-throw it. -BMR 2013/03/21
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-H5File::H5File( const char* name, unsigned int flags, const FileCreatPropList& create_plist, const FileAccPropList& access_plist ) : H5Location(), id(H5I_INVALID_HID)
+H5File::H5File( const char* name, unsigned int flags, const FileCreatPropList& create_plist, const FileAccPropList& access_plist ) : H5Location(), CommonFG(), id(H5I_INVALID_HID)
{
try {
p_get_file(name, flags, create_plist, access_plist);
@@ -111,7 +111,7 @@ H5File::H5File( const char* name, unsigned int flags, const FileCreatPropList& c
// to catch then re-throw it. -BMR 2013/03/21
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-H5File::H5File( const H5std_string& name, unsigned int flags, const FileCreatPropList& create_plist, const FileAccPropList& access_plist ) : H5Location(), id(H5I_INVALID_HID)
+H5File::H5File( const H5std_string& name, unsigned int flags, const FileCreatPropList& create_plist, const FileAccPropList& access_plist ) : H5Location(), CommonFG(), id(H5I_INVALID_HID)
{
try {
p_get_file(name.c_str(), flags, create_plist, access_plist);
@@ -164,7 +164,7 @@ void H5File::p_get_file(const char* name, unsigned int flags, const FileCreatPro
///\param original - IN: H5File instance to copy
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-H5File::H5File(const H5File& original) : H5Location(original)
+H5File::H5File(const H5File& original) : H5Location(), CommonFG()
{
id = original.getId();
incRefCount(); // increment number of references to this id
diff --git a/c++/src/H5Group.cpp b/c++/src/H5Group.cpp
index cad5e29..8b22458 100644
--- a/c++/src/H5Group.cpp
+++ b/c++/src/H5Group.cpp
@@ -51,7 +51,7 @@ namespace H5 {
///\brief Default constructor: creates a stub Group.
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-Group::Group() : H5Object(), id(H5I_INVALID_HID) {}
+Group::Group() : H5Object(), CommonFG(), id(H5I_INVALID_HID) {}
//--------------------------------------------------------------------------
// Function: Group copy constructor
@@ -59,7 +59,7 @@ Group::Group() : H5Object(), id(H5I_INVALID_HID) {}
///\param original - IN: Original group to copy
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-Group::Group(const Group& original) : H5Object(original)
+Group::Group(const Group& original) : H5Object(), CommonFG()
{
id = original.getId();
incRefCount(); // increment number of references to this id
@@ -82,7 +82,7 @@ hid_t Group::getLocId() const
///\param existing_id - IN: Id of an existing group
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-Group::Group(const hid_t existing_id) : H5Object()
+Group::Group(const hid_t existing_id) : H5Object(), CommonFG()
{
id = existing_id;
}
@@ -100,7 +100,7 @@ Group::Group(const hid_t existing_id) : H5Object()
/// is a datatype that has been named by DataType::commit.
// Programmer Binh-Minh Ribler - Oct, 2006
//--------------------------------------------------------------------------
-Group::Group(const H5Location& loc, const void* ref, H5R_type_t ref_type, const PropList& plist) : H5Object(), id(H5I_INVALID_HID)
+Group::Group(const H5Location& loc, const void* ref, H5R_type_t ref_type, const PropList& plist) : H5Object(), CommonFG(), id(H5I_INVALID_HID)
{
id = H5Location::p_dereference(loc.getId(), ref, ref_type, plist, "constructor - by dereference");
}
@@ -115,7 +115,7 @@ Group::Group(const H5Location& loc, const void* ref, H5R_type_t ref_type, const
///\exception H5::ReferenceException
// Programmer Binh-Minh Ribler - Oct, 2006
//--------------------------------------------------------------------------
-Group::Group(const Attribute& attr, const void* ref, H5R_type_t ref_type, const PropList& plist) : H5Object(), id(H5I_INVALID_HID)
+Group::Group(const Attribute& attr, const void* ref, H5R_type_t ref_type, const PropList& plist) : H5Object(), CommonFG(), id(H5I_INVALID_HID)
{
id = H5Location::p_dereference(attr.getId(), ref, ref_type, plist, "constructor - by dereference");
}
diff --git a/c++/src/H5IdComponent.cpp b/c++/src/H5IdComponent.cpp
index 4a9dcac..54813ea 100644
--- a/c++/src/H5IdComponent.cpp
+++ b/c++/src/H5IdComponent.cpp
@@ -37,16 +37,28 @@ namespace H5 {
///\param h5_id - IN: Id of an existing object
///\exception H5::DataTypeIException
// Programmer Binh-Minh Ribler - 2000
+//
+// *** Deprecation warning ***
+// This constructor is no longer appropriate because the data member "id" had
+// been moved to the sub-classes. It will be removed in 1.10 release. If its
+// removal does not raise any problems in 1.10, it will be removed from 1.8 in
+// subsequent releases.
//--------------------------------------------------------------------------
IdComponent::IdComponent(const hid_t h5_id) {}
//--------------------------------------------------------------------------
// Function: IdComponent copy constructor
-///\brief Copy constructor: makes a copy of the original IdComponent object.
-///\param original - IN: IdComponent instance to copy
+// Purpose: This noop copy constructor is removed as a result of the data
+// member "id" being moved down to sub-classes. (Mar 2015)
+// Parameters: original - IN: IdComponent instance to copy
// Programmer Binh-Minh Ribler - 2000
+//
+// *** Deprecation warning ***
+// This constructor is no longer appropriate because the data member "id" had
+// been moved to the sub-classes. It is removed from 1.8.15 because it is
+// a noop and it can be generated by the compiler if needed.
//--------------------------------------------------------------------------
-IdComponent::IdComponent( const IdComponent& original ) {}
+// IdComponent::IdComponent(const IdComponent& original) {}
//--------------------------------------------------------------------------
// Function: IdComponent::incRefCount
@@ -82,12 +94,14 @@ void IdComponent::decRefCount(const hid_t obj_id) const
{
if (p_valid_id(obj_id))
if (H5Idec_ref(obj_id) < 0)
+ {
if (H5Iget_ref(obj_id) <= 0)
throw IdComponentException(inMemFunc("decRefCount"),
"object ref count is 0 or negative");
else
throw IdComponentException(inMemFunc("decRefCount"),
"decrementing object ref count failed");
+ }
}
//--------------------------------------------------------------------------
diff --git a/c++/src/H5IdComponent.h b/c++/src/H5IdComponent.h
index 3208a39..f9fd56e 100644
--- a/c++/src/H5IdComponent.h
+++ b/c++/src/H5IdComponent.h
@@ -60,11 +60,18 @@ class H5_DLLCPP IdComponent {
// Sets the identifier of this object to a new value.
void setId(const hid_t new_id);
+ // *** Deprecation warning ***
+ // The following two constructors are no longer appropriate after the
+ // data member "id" had been moved to the sub-classes.
+ // The copy constructor is a noop and is removed in 1.8.15 and the
+ // other will be removed from 1.10 release, and then from 1.8 if its
+ // removal does not raise any problems in two 1.10 releases.
+
// Creates an object to hold an HDF5 identifier.
IdComponent( const hid_t h5_id );
// Copy constructor: makes copy of the original IdComponent object.
- IdComponent( const IdComponent& original );
+ // IdComponent( const IdComponent& original );
#ifndef DOXYGEN_SHOULD_SKIP_THIS
// Pure virtual function for there are various H5*close for the
diff --git a/c++/src/H5Location.cpp b/c++/src/H5Location.cpp
index cd733c4..5cece19 100644
--- a/c++/src/H5Location.cpp
+++ b/c++/src/H5Location.cpp
@@ -70,17 +70,28 @@ H5Location::H5Location() : IdComponent() {}
// object.
// Parameters object_id - IN: Id of an existing HDF5 object
// Programmer Binh-Minh Ribler - 2000
+
+// *** Deprecation warning ***
+// This constructor is no longer appropriate because the data member "id" had
+// been moved to the sub-classes. It will be removed in 1.10 release. If its
+// removal does not raise any problems in 1.10, it will be removed from 1.8 in
+// subsequent releases.
//--------------------------------------------------------------------------
-H5Location::H5Location(const hid_t object_id) : IdComponent(object_id) {}
+H5Location::H5Location(const hid_t object_id) : IdComponent() {}
//--------------------------------------------------------------------------
// Function: H5Location copy constructor
-///\brief Copy constructor: makes a copy of the original H5Location
-/// instance.
+// Purpose: This noop copy constructor is removed as a result of the data
+// member "id" being moved down to sub-classes. (Mar 2015)
///\param original - IN: H5Location instance to copy
// Programmer Binh-Minh Ribler - 2000
+//
+// *** Deprecation warning ***
+// This constructor is no longer appropriate because the data member "id" had
+// been moved to the sub-classes. It is removed from 1.8.15 because it is
+// a noop and it can be generated by the compiler if needed.
//--------------------------------------------------------------------------
-H5Location::H5Location( const H5Location& original ) : IdComponent( original ) {}
+// H5Location::H5Location(const H5Location& original) : IdComponent() {}
#endif // DOXYGEN_SHOULD_SKIP_THIS
diff --git a/c++/src/H5Location.h b/c++/src/H5Location.h
index e015825..15b9ffd 100644
--- a/c++/src/H5Location.h
+++ b/c++/src/H5Location.h
@@ -138,13 +138,21 @@ class H5_DLLCPP H5Location : public IdComponent {
// Default constructor
H5Location();
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
+
+ // *** Deprecation warning ***
+ // The following two constructors are no longer appropriate after the
+ // data member "id" had been moved to the sub-classes.
+ // The copy constructor is a noop and is removed in 1.8.15 and the
+ // other will be removed from 1.10 release, and then from 1.8 if its
+ // removal does not raise any problems in two 1.10 releases.
+
// Creates a copy of an existing object giving the location id.
H5Location(const hid_t loc_id);
// Copy constructor.
H5Location(const H5Location& original);
-#ifndef DOXYGEN_SHOULD_SKIP_THIS
// Creates a reference to an HDF5 object or a dataset region.
void p_reference(void* ref, const char* name, hid_t space_id, H5R_type_t ref_type) const;
diff --git a/c++/src/H5Object.cpp b/c++/src/H5Object.cpp
index 94b03ab..df3f565 100644
--- a/c++/src/H5Object.cpp
+++ b/c++/src/H5Object.cpp
@@ -50,8 +50,26 @@ H5Object::H5Object() : H5Location() {}
// object.
// Parameters object_id - IN: Id of an existing HDF5 object
// Programmer Binh-Minh Ribler - 2000
+// *** Deprecation warning ***
+// This constructor is no longer appropriate because the data member "id" had
+// been moved to the sub-classes. It will be removed in 1.10 release. If its
+// removal does not raise any problems in 1.10, it will be removed from 1.8 in
+// subsequent releases.
//--------------------------------------------------------------------------
-H5Object::H5Object( const hid_t object_id ) : H5Location( object_id ) {}
+H5Object::H5Object(const hid_t object_id) : H5Location() {}
+
+//--------------------------------------------------------------------------
+// Function: H5Object copy constructor
+///\brief Copy constructor: makes a copy of the original H5Object
+/// instance.
+///\param original - IN: H5Object instance to copy
+// Programmer Binh-Minh Ribler - 2000
+// *** Deprecation warning ***
+// This constructor is no longer appropriate because the data member "id" had
+// been moved to the sub-classes. It is removed from 1.8.15 because it is
+// a noop and it can be generated by the compiler if needed.
+//--------------------------------------------------------------------------
+// H5Object::H5Object(const H5Object& original) : H5Location() {}
//--------------------------------------------------------------------------
// Function: getObjName
@@ -165,15 +183,6 @@ ssize_t H5Object::getObjName(H5std_string& obj_name, size_t len) const
}
//--------------------------------------------------------------------------
-// Function: H5Object copy constructor
-///\brief Copy constructor: makes a copy of the original H5Object
-/// instance.
-///\param original - IN: H5Object instance to copy
-// Programmer Binh-Minh Ribler - 2000
-//--------------------------------------------------------------------------
-H5Object::H5Object( const H5Object& original ) : H5Location( original ) {}
-
-//--------------------------------------------------------------------------
// Function: H5Object destructor
///\brief Noop destructor.
// Programmer Binh-Minh Ribler - 2000
diff --git a/c++/src/H5Object.h b/c++/src/H5Object.h
index 5576d13..f8ac792 100644
--- a/c++/src/H5Object.h
+++ b/c++/src/H5Object.h
@@ -47,9 +47,6 @@ namespace H5 {
class H5_DLLCPP H5Object : public H5Location {
public:
#ifndef DOXYGEN_SHOULD_SKIP_THIS
- // Copy constructor: makes copy of an H5Object object.
- H5Object(const H5Object& original);
-
// Gets the name of this HDF5 object, i.e., Group, DataSet, or
// DataType.
ssize_t getObjName(char *obj_name, size_t buf_size = 0) const;
@@ -63,9 +60,19 @@ class H5_DLLCPP H5Object : public H5Location {
// Default constructor
H5Object();
+ // *** Deprecation warning ***
+ // The following two constructors are no longer appropriate after the
+ // data member "id" had been moved to the sub-classes.
+ // The copy constructor is a noop and is removed in 1.8.15 and the
+ // other will be removed from 1.10 release, and then from 1.8 if its
+ // removal does not raise any problems in two 1.10 releases.
+
// Creates a copy of an existing object giving the object id
H5Object( const hid_t object_id );
+ // Copy constructor: makes copy of an H5Object object.
+ // H5Object(const H5Object& original);
+
#endif // DOXYGEN_SHOULD_SKIP_THIS
}; /* end class H5Object */
diff --git a/c++/src/H5PropList.cpp b/c++/src/H5PropList.cpp
index 5afe80f..1d7d1ba 100644
--- a/c++/src/H5PropList.cpp
+++ b/c++/src/H5PropList.cpp
@@ -54,7 +54,7 @@ PropList::PropList() : IdComponent(), id(H5P_DEFAULT) {}
///\param original - IN: The original property list to copy
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
-PropList::PropList(const PropList& original) : IdComponent(original)
+PropList::PropList(const PropList& original) : IdComponent()
{
id = original.getId();
incRefCount(); // increment number of references to this id
diff --git a/c++/src/Makefile.in b/c++/src/Makefile.in
index bc39d22..19e4e22 100644
--- a/c++/src/Makefile.in
+++ b/c++/src/Makefile.in
@@ -678,7 +678,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2
# After making changes, run bin/reconfigure to update other configure related
# files like Makefile.in.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 205
+LT_VERS_REVISION = 206
LT_VERS_AGE = 0
# This is our main target
diff --git a/c++/test/dsets.cpp b/c++/test/dsets.cpp
index fc0ea3a..e5c8bf0 100644
--- a/c++/test/dsets.cpp
+++ b/c++/test/dsets.cpp
@@ -56,11 +56,14 @@ const H5std_string DSET_TCONV_NAME ("tconv");
const H5std_string DSET_COMPRESS_NAME("compressed");
const H5std_string DSET_BOGUS_NAME ("bogus");
+/* Temporary filter IDs used for testing */
const int H5Z_FILTER_BOGUS = 305;
-// Local prototypes
+#if 0 // UNUSED variables caused warning, so duplicated below with NULL instead
static size_t filter_bogus(unsigned int flags, size_t cd_nelmts,
const unsigned int *cd_values, size_t nbytes, size_t *buf_size, void **buf);
+#endif
+static size_t filter_bogus(size_t nbytes);
/*-------------------------------------------------------------------------
* Function: test_create
@@ -458,13 +461,12 @@ const H5Z_class2_t H5Z_BOGUS[1] = {{
*-------------------------------------------------------------------------
*/
static size_t
-/*bogus(unsigned int UNUSED flags, size_t UNUSED cd_nelmts,
- const unsigned int UNUSED cd_values[], size_t nbytes,
- size_t UNUSED *buf_size, void UNUSED **buf)
-BMR: removed UNUSED for now until asking Q. or R. to pass compilation*/
+#if 0 // UNUSED variables caused warning, so duplicated below with NULL instead
filter_bogus(unsigned int flags, size_t cd_nelmts,
const unsigned int cd_values[], size_t nbytes,
size_t *buf_size, void **buf)
+#endif
+filter_bogus(size_t nbytes)
{
return nbytes;
}
diff --git a/c++/test/tattr.cpp b/c++/test/tattr.cpp
index 29f50f8..407e6a8 100644
--- a/c++/test/tattr.cpp
+++ b/c++/test/tattr.cpp
@@ -53,9 +53,9 @@ const size_t ATTR_MAX_DIMS = 7;
/* 3-D dataset with fixed dimensions */
const int SPACE1_RANK = 3;
-const int SPACE1_DIM1 = 3;
-const int SPACE1_DIM2 = 15;
-const int SPACE1_DIM3 = 13;
+const hsize_t SPACE1_DIM1 = 3;
+const hsize_t SPACE1_DIM2 = 15;
+const hsize_t SPACE1_DIM3 = 13;
/* Object names */
const H5std_string DSET1_NAME("Dataset1");
@@ -65,7 +65,7 @@ const H5std_string TYPE1_NAME("/Type");
/* Attribute Rank & Dimensions */
const H5std_string ATTR1_NAME("Attr1");
const int ATTR1_RANK = 1;
-const int ATTR1_DIM1 = 3;
+const hsize_t ATTR1_DIM1 = 3;
int attr_data1[ATTR1_DIM1]={512,-234,98123}; /* Test data for 1st attribute */
// File attribute, using the same rank and dimensions as ATTR1_NAME's
@@ -74,8 +74,8 @@ const H5std_string FATTR2_NAME("File Attr2");
const H5std_string ATTR2_NAME("Attr2");
const int ATTR2_RANK = 2;
-const int ATTR2_DIM1 = 2;
-const int ATTR2_DIM2 = 2;
+const hsize_t ATTR2_DIM1 = 2;
+const hsize_t ATTR2_DIM2 = 2;
int attr_data2[ATTR2_DIM1][ATTR2_DIM2]={{7614,-416},{197814,-3}}; /* Test data for 2nd attribute */
const H5std_string ATTR3_NAME("Attr3");
@@ -123,7 +123,7 @@ static void test_attr_basic_write()
hsize_t dims2[] = {ATTR1_DIM1};
hsize_t dims3[] = {ATTR2_DIM1,ATTR2_DIM2};
int read_data1[ATTR1_DIM1]={0}; // Buffer for reading 1st attribute
- int i;
+ hsize_t i;
// Output message about test being performed
SUBTEST("Basic Attribute Writing Functions");
@@ -384,7 +384,7 @@ static void test_attr_getname()
static void test_attr_rename()
{
int read_data1[ATTR1_DIM1]={0}; // Buffer for reading the attribute
- int i;
+ hsize_t i;
// Output message about test being performed
SUBTEST("Checking for Existence and Renaming Attribute");
@@ -493,7 +493,7 @@ static void test_attr_rename()
********************************************************************/
static void test_attr_basic_read()
{
- int i, j;
+ hsize_t i, j;
// Output message about test being performed
SUBTEST("Basic Attribute Reading Functions");
@@ -624,7 +624,6 @@ static void test_attr_compound_read()
size_t size; // Attribute datatype size as stored in file
size_t offset; // Attribute datatype field offset
struct attr4_struct read_data4[ATTR4_DIM1][ATTR4_DIM2]; // Buffer for reading 4th attribute
- hsize_t i,j;
// Output message about test being performed
SUBTEST("Basic Attribute Functions");
@@ -654,7 +653,7 @@ static void test_attr_compound_read()
// Get the dims of the dataspace and verify them
int ndims = space.getSimpleExtentDims(dims);
- if(dims[0]!=ATTR4_DIM1)
+ verify_val(ndims, ATTR4_RANK, "DataSpace::getSimpleExtentDims", __LINE__, __FILE__);
verify_val((long)dims[0], (long)ATTR4_DIM1, "DataSpace::getSimpleExtentDims",__LINE__, __FILE__);
verify_val((long)dims[1], (long)ATTR4_DIM2, "DataSpace::getSimpleExtentDims",__LINE__, __FILE__);
@@ -673,13 +672,14 @@ static void test_attr_compound_read()
// Verify that the fields have the same names as when the type
// was created
- for(i=0; i<fields; i++)
+ int j;
+ for(j=0; j<fields; j++)
{
- H5std_string fieldname = datatype.getMemberName(i);
+ H5std_string fieldname = datatype.getMemberName(j);
if(!((fieldname == ATTR4_FIELDNAME1) ||
(fieldname == ATTR4_FIELDNAME2) ||
(fieldname == ATTR4_FIELDNAME3)))
- TestErrPrintf("%d:invalid field name for field #%d: %s\n",__LINE__,i,fieldname.c_str());
+ TestErrPrintf("%d:invalid field name for field #%d: %s\n",__LINE__,j,fieldname.c_str());
} /* end for */
offset = datatype.getMemberOffset(0);
@@ -729,12 +729,13 @@ static void test_attr_compound_read()
attr.read(datatype, read_data4);
// Verify values read in
- for(i=0; i<ATTR4_DIM1; i++)
- for(j=0; j<ATTR4_DIM2; j++)
- if(HDmemcmp(&attr_data4[i][j],&read_data4[i][j],sizeof(struct attr4_struct))) {
- TestErrPrintf("%d:attribute data different: attr_data4[%d][%d].i=%d, read_data4[%d][%d].i=%d\n",__LINE__,i,j,attr_data4[i][j].i,i,j,read_data4[i][j].i);
- TestErrPrintf("%d:attribute data different: attr_data4[%d][%d].d=%f, read_data4[%d][%d].d=%f\n",__LINE__,i,j,attr_data4[i][j].d,i,j,read_data4[i][j].d);
- TestErrPrintf("%d:attribute data different: attr_data4[%d][%d].c=%c, read_data4[%d][%d].c=%c\n",__LINE__,i,j,attr_data4[i][j].c,i,j,read_data4[i][j].c);
+ hsize_t ii, jj;
+ for(ii=0; ii<ATTR4_DIM1; ii++)
+ for(jj=0; jj<ATTR4_DIM2; jj++)
+ if(HDmemcmp(&attr_data4[ii][jj],&read_data4[ii][jj],sizeof(struct attr4_struct))) {
+ TestErrPrintf("%d:attribute data different: attr_data4[%d][%d].i=%d, read_data4[%d][%d].i=%d\n",__LINE__,ii,jj,attr_data4[ii][jj].i,ii,jj,read_data4[ii][jj].i);
+ TestErrPrintf("%d:attribute data different: attr_data4[%d][%d].d=%f, read_data4[%d][%d].d=%f\n",__LINE__,ii,jj,attr_data4[ii][jj].d,ii,jj,read_data4[ii][jj].d);
+ TestErrPrintf("%d:attribute data different: attr_data4[%d][%d].c=%c, read_data4[%d][%d].c=%c\n",__LINE__,ii,jj,attr_data4[ii][jj].c,ii,jj,read_data4[ii][jj].c);
} /* end if */
// Verify name
@@ -928,7 +929,7 @@ static void test_attr_mult_read()
int read_data1[ATTR1_DIM1]={0}; // Buffer for reading 1st attribute
int read_data2[ATTR2_DIM1][ATTR2_DIM2]={{0}}; // Buffer for reading 2nd attribute
double read_data3[ATTR3_DIM1][ATTR3_DIM2][ATTR3_DIM3]={{{0}}}; // Buffer for reading 3rd attribute
- int i,j,k;
+ hsize_t i,j,k;
// Output message about test being performed
SUBTEST("Multiple Attribute Reading Functions");
@@ -959,7 +960,7 @@ static void test_attr_mult_read()
// Get the dims of the dataspace and verify them
hsize_t dims[ATTR_MAX_DIMS]; // Attribute dimensions
int ndims = space.getSimpleExtentDims(dims);
- if(dims[0]!=ATTR1_DIM1)
+ if ((long)dims[0] != (long)ATTR1_DIM1)
TestErrPrintf("%d:attribute dimensions different: dims[0]=%d, should be %d\n",__LINE__,(int)dims[0],ATTR1_DIM1);
/* Verify Datatype */
@@ -1010,10 +1011,9 @@ static void test_attr_mult_read()
// Get the dims of the dataspace and verify them
ndims = space.getSimpleExtentDims(dims);
- if(dims[0]!=ATTR2_DIM1)
- TestErrPrintf("%d:attribute dimensions different: dims[0]=%d, should be %d\n",__LINE__,(int)dims[0],ATTR2_DIM1);
- if(dims[1]!=ATTR2_DIM2)
- TestErrPrintf("%d:attribute dimensions different: dims[1]=%d, should be %d\n",__LINE__,(int)dims[1],ATTR2_DIM2);
+
+ verify_val((long)dims[0], (long)ATTR2_DIM1, "DataSpace::getSimpleExtentDims",__LINE__, __FILE__);
+ verify_val((long)dims[1], (long)ATTR2_DIM2, "DataSpace::getSimpleExtentDims",__LINE__, __FILE__);
/* Verify Datatype */
diff --git a/c++/test/tfilter.cpp b/c++/test/tfilter.cpp
index 854c7bb..3edb83a 100644
--- a/c++/test/tfilter.cpp
+++ b/c++/test/tfilter.cpp
@@ -57,9 +57,13 @@ static herr_t test_filter_internal(hid_t fid, const char *name, hid_t dcpl,
#endif
/* Temporary filter IDs used for testing */
-#define H5Z_FILTER_BOGUS 305
+const int H5Z_FILTER_BOGUS = 305;
+
+#if 0 // UNUSED variables caused warning, so duplicated below with NULL instead
static size_t filter_bogus(unsigned int flags, size_t cd_nelmts,
const unsigned int *cd_values, size_t nbytes, size_t *buf_size, void **buf);
+#endif
+static size_t filter_bogus(size_t nbytes);
/* This message derives from H5Z */
const H5Z_class2_t H5Z_BOGUS[1] = {{
H5Z_CLASS_T_VERS, /* H5Z_class_t version */
@@ -88,9 +92,12 @@ const H5Z_class2_t H5Z_BOGUS[1] = {{
*-------------------------------------------------------------------------
*/
static size_t
+#if 0 // UNUSED variables caused warning, so duplicated below with NULL instead
filter_bogus(unsigned int UNUSED flags, size_t UNUSED cd_nelmts,
const unsigned int UNUSED *cd_values, size_t nbytes,
size_t UNUSED *buf_size, void UNUSED **buf)
+#endif
+filter_bogus(size_t nbytes)
{
return nbytes;
}
@@ -239,7 +246,8 @@ static void test_szip_filter(H5File& file1)
#else /* H5_HAVE_FILTER_SZIP */
SUBTEST("szip filter");
SKIPPED();
- puts(" Szip filter not enabled");
+ H5std_string fname = file1.getFileName();
+ cerr << " Szip filter not enabled for file '" << fname << "'" << endl;
#endif /* H5_HAVE_FILTER_SZIP */
} // test_szip_filter
diff --git a/c++/test/tobject.cpp b/c++/test/tobject.cpp
index b86d7cb..c74d34a 100644
--- a/c++/test/tobject.cpp
+++ b/c++/test/tobject.cpp
@@ -181,6 +181,8 @@ static void test_get_objname_ontypes()
Group grp = file.createGroup ("typetests");
// Create a datatype and save it
+ IntType inttype(PredType::STD_B8LE);
+
DataType dtype(PredType::STD_B8LE);
dtype.commit(file, "STD_B8LE");
@@ -201,6 +203,7 @@ static void test_get_objname_ontypes()
// Name this datatype
new_int_type.commit(grp, "IntType NATIVE_INT");
ssize_t name_len = new_int_type.getObjName(type_name); // default len
+ verify_val(name_len, (ssize_t)HDstrlen("/typetests/IntType NATIVE_INT"), "DataSet::getObjName", __LINE__, __FILE__);
verify_val(type_name, "/typetests/IntType NATIVE_INT", "DataSet::getObjName", __LINE__, __FILE__);
// Close everything or they can be closed when objects go out of scope
@@ -208,7 +211,6 @@ static void test_get_objname_ontypes()
copied_type.close();
new_int_type.close();
grp.close();
- file.close();
PASSED();
} // end top try block
diff --git a/c++/test/trefer.cpp b/c++/test/trefer.cpp
index dcfb644..9d072be 100644
--- a/c++/test/trefer.cpp
+++ b/c++/test/trefer.cpp
@@ -462,11 +462,11 @@ test_reference_group(void)
// Check number of objects in the group dereferenced by constructor
hsize_t nobjs = refgroup.getNumObjs();
- verify_val(nobjs, 3, "H5Group::getNumObjs",__LINE__,__FILE__);
+ verify_val(nobjs, (hsize_t)3, "H5Group::getNumObjs",__LINE__,__FILE__);
// Check number of objects in the group dereferenced by ::reference
nobjs = group.getNumObjs();
- verify_val(nobjs, 3, "H5Group::getNumObjs",__LINE__,__FILE__);
+ verify_val(nobjs, (hsize_t)3, "H5Group::getNumObjs",__LINE__,__FILE__);
// Check getting file name given the group dereferenced via constructor
H5std_string fname = refgroup.getFileName();
@@ -479,7 +479,7 @@ test_reference_group(void)
// Unlink one of the objects in the dereferenced group, and re-check
refgroup.unlink(GROUPNAME2);
nobjs = refgroup.getNumObjs();
- verify_val(nobjs, 2, "H5Group::getNumObjs",__LINE__,__FILE__);
+ verify_val(nobjs, (hsize_t)2, "H5Group::getNumObjs",__LINE__,__FILE__);
// Close resources
group.close();
@@ -686,43 +686,43 @@ test_reference_region_1D(void)
reg_sp.getSelectHyperBlocklist((hsize_t)0, (hsize_t)nelms, coords);
// Verify values in the list
- verify_val(coords[0], 2, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[1], 3, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[2], 7, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[3], 8, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[4], 12, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[5], 13, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[6], 17, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[7], 18, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[8], 22, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[9], 23, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[10], 27, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[11], 28, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[12], 32, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[13], 33, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[14], 37, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[15], 38, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[16], 42, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[17], 43, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[18], 47, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[19], 48, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[20], 52, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[21], 53, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[22], 57, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[23], 58, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[24], 62, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[25], 63, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[26], 67, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[27], 68, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[28], 72, "Hyperslab Coordinates",__LINE__,__FILE__);
- verify_val(coords[29], 73, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[0], (hsize_t)2, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[1], (hsize_t)3, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[2], (hsize_t)7, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[3], (hsize_t)8, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[4],(hsize_t)12, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[5],(hsize_t)13, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[6],(hsize_t)17, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[7],(hsize_t)18, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[8],(hsize_t)22, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[9],(hsize_t)23, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[10],(hsize_t)27, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[11],(hsize_t)28, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[12],(hsize_t)32, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[13],(hsize_t)33, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[14],(hsize_t)37, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[15],(hsize_t)38, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[16],(hsize_t)42, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[17],(hsize_t)43, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[18],(hsize_t)47, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[19],(hsize_t)48, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[20],(hsize_t)52, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[21],(hsize_t)53, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[22],(hsize_t)57, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[23],(hsize_t)58, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[24],(hsize_t)62, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[25],(hsize_t)63, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[26],(hsize_t)67, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[27],(hsize_t)68, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[28],(hsize_t)72, "Hyperslab Coordinates",__LINE__,__FILE__);
+ verify_val(coords[29],(hsize_t)73, "Hyperslab Coordinates",__LINE__,__FILE__);
HDfree(coords);
// Check boundaries
reg_sp.getSelectBounds(low, high);
- verify_val(low[0], 2, "DataSpace::getSelectBounds",__LINE__,__FILE__);
- verify_val(high[0], 73, "DataSpace::getSelectBounds",__LINE__,__FILE__);
+ verify_val(low[0],(hsize_t)2, "DataSpace::getSelectBounds",__LINE__,__FILE__);
+ verify_val(high[0],(hsize_t)73, "DataSpace::getSelectBounds",__LINE__,__FILE__);
/* Close region space */
reg_sp.close();
@@ -760,8 +760,8 @@ test_reference_region_1D(void)
// Check boundaries
elm_sp.getSelectBounds(low, high);
- verify_val(low[0], 3, "DataSpace::getSelectBounds",__LINE__,__FILE__);
- verify_val(high[0], 97, "DataSpace::getSelectBounds",__LINE__,__FILE__);
+ verify_val(low[0],(hsize_t)3, "DataSpace::getSelectBounds",__LINE__,__FILE__);
+ verify_val(high[0],(hsize_t)97, "DataSpace::getSelectBounds",__LINE__,__FILE__);
// Close element space
elm_sp.close();
diff --git a/c++/test/ttypes.cpp b/c++/test/ttypes.cpp
index e9e1427..004723f 100644
--- a/c++/test/ttypes.cpp
+++ b/c++/test/ttypes.cpp
@@ -109,7 +109,7 @@ static void test_classes()
{
SUBTEST("PredType::getClass()");
try {
- int curr_nerrors = GetTestNumErrs();
+ // maybe later, int curr_nerrors = GetTestNumErrs();
// PredType::NATIVE_INT should be in H5T_INTEGER class
H5T_class_t tcls = PredType::NATIVE_INT.getClass();
diff --git a/c++/test/tvlstr.cpp b/c++/test/tvlstr.cpp
index a2669db..7c81a8e 100644
--- a/c++/test/tvlstr.cpp
+++ b/c++/test/tvlstr.cpp
@@ -60,6 +60,7 @@ const hsize_t SPACE1_DIM1 = 4;
** Note: exact copy from the C version.
** (Not used now)
****************************************************************/
+#if 0 // not used now
static void *test_vlstr_alloc_custom(size_t size, void *info)
{
void *ret_value=NULL; // Pointer to return
@@ -81,6 +82,7 @@ static void *test_vlstr_alloc_custom(size_t size, void *info)
return(ret_value);
}
+#endif
/****************************************************************
**
@@ -92,6 +94,7 @@ static void *test_vlstr_alloc_custom(size_t size, void *info)
** Note: exact copy from the C version.
** (Not used now)
****************************************************************/
+#if 0 // not used now
static void test_vlstr_free_custom(void *_mem, void *info)
{
unsigned char *mem;
@@ -111,6 +114,7 @@ static void test_vlstr_free_custom(void *_mem, void *info)
HDfree(mem);
} // end if
}
+#endif
/*-------------------------------------------------------------------------
* Function: test_vlstring_dataset
@@ -256,7 +260,7 @@ static void test_vlstring_array_dataset()
char *string_ds_check[SPACE1_DIM1];
dataset.read(string_ds_check, vlst);
- int ii;
+ hsize_t ii;
for (ii = 0; ii < SPACE1_DIM1; ii++)
{
if(HDstrcmp(string_ds_check[ii], string_ds_array[ii])!=0)
@@ -351,25 +355,25 @@ static void test_vlstrings_special()
dataset.read(rdata, vlst);
// Check data read in.
- hsize_t i; // counting variable
- for (i=0; i<SPACE1_DIM1; i++)
- if(rdata[i]!=NULL)
- TestErrPrintf("VL doesn't match!, rdata[%d]=%p\n",(int)i,rdata[i]);
+ hsize_t ii; // counting variable
+ for (ii=0; ii<SPACE1_DIM1; ii++)
+ if(rdata[ii]!=NULL)
+ TestErrPrintf("VL doesn't match!, rdata[%d]=%p\n",(int)ii,rdata[ii]);
// Write dataset to disk, then read it back.
dataset.write(wdata, vlst);
dataset.read(rdata, vlst);
// Compare data read in.
- for (i = 0; i < SPACE1_DIM1; i++) {
- size_t wlen = HDstrlen(wdata[i]);
- size_t rlen = HDstrlen(rdata[i]);
+ for (ii = 0; ii < SPACE1_DIM1; ii++) {
+ size_t wlen = HDstrlen(wdata[ii]);
+ size_t rlen = HDstrlen(rdata[ii]);
if(wlen != rlen) {
- TestErrPrintf("VL data lengths don't match!, strlen(wdata[%d])=%u, strlen(rdata[%d])=%u\n", (int)i, (unsigned)wlen, (int)i, (unsigned)rlen);
+ TestErrPrintf("VL data lengths don't match!, strlen(wdata[%d])=%u, strlen(rdata[%d])=%u\n", (int)ii, (unsigned)wlen, (int)ii, (unsigned)rlen);
continue;
} // end if
- if(HDstrcmp(wdata[i],rdata[i]) != 0) {
- TestErrPrintf("VL data values don't match!, wdata[%d]=%s, rdata[%d]=%s\n", (int)i, wdata[i], (int)i, rdata[i]);
+ if(HDstrcmp(wdata[ii],rdata[ii]) != 0) {
+ TestErrPrintf("VL data values don't match!, wdata[%d]=%s, rdata[%d]=%s\n", (int)ii, wdata[ii], (int)ii, rdata[ii]);
continue;
} // end if
} // end for
@@ -398,9 +402,9 @@ static void test_vlstrings_special()
dataset.read(rdata, vlst);
// Check data read in.
- for (i=0; i<SPACE1_DIM1; i++)
- if(rdata[i]!=NULL)
- TestErrPrintf("VL doesn't match!, rdata[%d]=%p\n",(int)i,rdata[i]);
+ for (ii=0; ii<SPACE1_DIM1; ii++)
+ if(rdata[ii]!=NULL)
+ TestErrPrintf("VL doesn't match!, rdata[%d]=%p\n",(int)ii,rdata[ii]);
// Try to write nil strings to disk.
dataset.write(wdata2, vlst);
@@ -409,9 +413,9 @@ static void test_vlstrings_special()
dataset.read(rdata, vlst);
// Check data read in.
- for (i=0; i<SPACE1_DIM1; i++)
- if(rdata[i]!=NULL)
- TestErrPrintf("VL doesn't match!, rdata[%d]=%p\n",(int)i,rdata[i]);
+ for (ii=0; ii<SPACE1_DIM1; ii++)
+ if(rdata[ii]!=NULL)
+ TestErrPrintf("VL doesn't match!, rdata[%d]=%p\n",(int)ii,rdata[ii]);
// Close objects and file.
dataset.close();
@@ -793,7 +797,7 @@ static void test_vlstring_array_attribute()
char *string_att_check[SPACE1_DIM1];
gr_attr.read(vlst, &string_att_check);
- int ii;
+ hsize_t ii;
for (ii = 0; ii < SPACE1_DIM1; ii++)
{
if(HDstrcmp(string_att_check[ii], string_att_array[ii])!=0)