You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[build] /home/MicroOcpp/./src/MicroOcpp/Version.h:30:13: warning: In the GNU C Library, "major" is defined
[build] by <sys/sysmacros.h>. For historical compatibility, it is
[build] currently defined by <sys/types.h> as well, but we plan to
[build] remove this soon. To use "major", include <sys/sysmacros.h>
[build] directly. If you did not intend to use a system-defined macro
[build] "major", you should undefine it after including <sys/types.h>.
[build] ProtocolVersion(int major = 1, int minor = 6, int patch = 0) : major(major), minor(minor), patch(patch) { }
‘const int MicroOcpp::ProtocolVersion::minor’ should be initialized
出错代码
/*
OCPP version type, defined in Model
*/
struct ProtocolVersion {
const int major, minor, patch;
ProtocolVersion(int major = 1, int minor = 6, int patch = 0) : major(major), minor(minor), patch(patch) { }
};
}
The text was updated successfully, but these errors were encountered:
I was able to get the code to build by making the following change in Version.h. But I'm not sure what the cause is, or why this change fixes it.
Add this before definition of struct ProtocolVersion.
#ifdef major
#undef major
#endif
#ifdef minor
#undef minor
#endif
Git Patch:
diff --git a/src/MicroOcpp/Version.h b/src/MicroOcpp/Version.h
index 92a2ea4..a61fa19 100644
--- a/src/MicroOcpp/Version.h
+++ b/src/MicroOcpp/Version.h
@@ -22,6 +22,14 @@
namespace MicroOcpp {
+#ifdef major
+#undef major
+#endif
+
+#ifdef minor
+#undef minor
+#endif
+
/*
* OCPP version type, defined in Model
*/
[build] /home/MicroOcpp/./src/MicroOcpp/Version.h:30:13: warning: In the GNU C Library, "major" is defined
[build] by <sys/sysmacros.h>. For historical compatibility, it is
[build] currently defined by <sys/types.h> as well, but we plan to
[build] remove this soon. To use "major", include <sys/sysmacros.h>
[build] directly. If you did not intend to use a system-defined macro
[build] "major", you should undefine it after including <sys/types.h>.
[build] ProtocolVersion(int major = 1, int minor = 6, int patch = 0) : major(major), minor(minor), patch(patch) { }
‘const int MicroOcpp::ProtocolVersion::minor’ should be initialized
出错代码
/*
*/
struct ProtocolVersion {
const int major, minor, patch;
ProtocolVersion(int major = 1, int minor = 6, int patch = 0) : major(major), minor(minor), patch(patch) { }
};
}
The text was updated successfully, but these errors were encountered: