Update FieldMetadata<...> type to take advantage of C++17
Prior to C++17 the type of metadata on protozero generated bindings
had to be a function type since constexpr inline variables were not
supported. Now that the project uses C++17 we can update this type.
Previously for a field 'foo' the variable kFoo was defined as:
`static constexpr FieldMetadata_Foo kFoo() = { return {}; };`
it is now defined as:
`static constexpr FieldMetadata_Foo kFoo;`
This is a breaking change for users who directly access field metadata.
Change-Id: I8b754c63a664cd0552ef05002a10bf6c4e7ee21e
diff --git a/CHANGELOG b/CHANGELOG
index 8194fa8..7662692 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -7,7 +7,15 @@
UI:
*
SDK:
- *
+ * Changed the type of the static constexpr metadata on protozero
+ generated bindings from a function returning the metadata to
+ metadata itself. For a field 'foo' the variable kFoo previously
+ defined as:
+ `static constexpr FieldMetadata_Foo kFoo() = { return {}; };`
+ it is now defined as:
+ `static constexpr FieldMetadata_Foo kFoo;`
+ This is a breaking change for users who directly access field
+ metadata.
v33.0 - 2023-03-02:
All: