libpldmresponder : Migrate to placement_new from reinterpret casting
reinterpret_cast is prohibited by the C++ core guidelines because
it takes the behavior outside the language definition and gives
problems with type safety. Placement-new on the other-hand allows
to control the object storage while still properly instantiating
an object,keeping the behavior inside the C++ language
specification.
Change-Id: If96afcb2c9dbea8fb6815d74a2181ca9ed04903a
Signed-off-by: Pavithra Barithaya <pavithrabarithaya07@gmail.com>
diff --git a/libpldmresponder/bios_config.cpp b/libpldmresponder/bios_config.cpp
index f58e7de..cabb0bd 100644
--- a/libpldmresponder/bios_config.cpp
+++ b/libpldmresponder/bios_config.cpp
@@ -1103,8 +1103,7 @@
}
Table attrValueEntry(sizeof(pldm_bios_attr_val_table_entry), 0);
- auto entry = reinterpret_cast<pldm_bios_attr_val_table_entry*>(
- attrValueEntry.data());
+ auto entry = new (attrValueEntry.data()) pldm_bios_attr_val_table_entry;
auto handler = findAttrHandle(attributeName);
auto type =