mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	Fixed warning "cast-align" (issue #914)
This commit is contained in:
		| @@ -5,6 +5,7 @@ HEAD | |||||||
| ---- | ---- | ||||||
|  |  | ||||||
| * Fixed warning "unused variable" with GCC 4.4 (issue #912) | * Fixed warning "unused variable" with GCC 4.4 (issue #912) | ||||||
|  | * Fixed warning "cast  increases required alignment" (issue #914) | ||||||
| * Added a clear error message for `StaticJsonBuffer` and `DynamicJsonBuffer` | * Added a clear error message for `StaticJsonBuffer` and `DynamicJsonBuffer` | ||||||
|  |  | ||||||
| v6.9.0 (2019-02-26) | v6.9.0 (2019-02-26) | ||||||
|   | |||||||
| @@ -23,7 +23,8 @@ template <typename TData> | |||||||
| class ArrayRefBase { | class ArrayRefBase { | ||||||
|  public: |  public: | ||||||
|   operator VariantConstRef() const { |   operator VariantConstRef() const { | ||||||
|     return VariantConstRef(reinterpret_cast<const VariantData*>(_data)); |     const void* data = _data;  // prevent warning cast-align | ||||||
|  |     return VariantConstRef(reinterpret_cast<const VariantData*>(data)); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   template <typename Visitor> |   template <typename Visitor> | ||||||
| @@ -94,7 +95,8 @@ class ArrayRef : public ArrayRefBase<CollectionData>, | |||||||
|       : base_type(data), _pool(pool) {} |       : base_type(data), _pool(pool) {} | ||||||
|  |  | ||||||
|   operator VariantRef() { |   operator VariantRef() { | ||||||
|     return VariantRef(_pool, reinterpret_cast<VariantData*>(_data)); |     void* data = _data;  // prevent warning cast-align | ||||||
|  |     return VariantRef(_pool, reinterpret_cast<VariantData*>(data)); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   operator ArrayConstRef() const { |   operator ArrayConstRef() const { | ||||||
|   | |||||||
| @@ -91,7 +91,7 @@ class MemoryPool { | |||||||
|     return reinterpret_cast<T*>(allocRight(sizeof(T))); |     return reinterpret_cast<T*>(allocRight(sizeof(T))); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   char* allocRight(size_t bytes) { |   void* allocRight(size_t bytes) { | ||||||
|     if (!canAlloc(bytes)) return 0; |     if (!canAlloc(bytes)) return 0; | ||||||
|     _right -= bytes; |     _right -= bytes; | ||||||
|     return _right; |     return _right; | ||||||
|   | |||||||
| @@ -18,7 +18,8 @@ template <typename TData> | |||||||
| class ObjectRefBase { | class ObjectRefBase { | ||||||
|  public: |  public: | ||||||
|   operator VariantConstRef() const { |   operator VariantConstRef() const { | ||||||
|     return VariantConstRef(reinterpret_cast<const VariantData*>(_data)); |     const void* data = _data;  // prevent warning cast-align | ||||||
|  |     return VariantConstRef(reinterpret_cast<const VariantData*>(data)); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   template <typename Visitor> |   template <typename Visitor> | ||||||
| @@ -140,7 +141,8 @@ class ObjectRef : public ObjectRefBase<CollectionData>, | |||||||
|       : base_type(data), _pool(buf) {} |       : base_type(data), _pool(buf) {} | ||||||
|  |  | ||||||
|   operator VariantRef() const { |   operator VariantRef() const { | ||||||
|     return VariantRef(_pool, reinterpret_cast<VariantData*>(_data)); |     void* data = _data;  // prevent warning cast-align | ||||||
|  |     return VariantRef(_pool, reinterpret_cast<VariantData*>(data)); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   operator ObjectConstRef() const { |   operator ObjectConstRef() const { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user