67 lines
3.5 KiB
Diff
67 lines
3.5 KiB
Diff
From 51b95bb315b0c6b41685641ba60eeef3bda69d1e Mon Sep 17 00:00:00 2001
|
||
From: Dominik 'Rathann' Mierzejewski <dominik@greysector.net>
|
||
Date: Wed, 18 Jan 2023 14:57:44 +0100
|
||
Subject: [PATCH] include <cstdint> explicitly
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=UTF-8
|
||
Content-Transfer-Encoding: 8bit
|
||
|
||
Prior to gcc-13 various C++ headers in gcc included `<cstdint>` even
|
||
though it was not strictly necessary; this results in the compiler
|
||
having to parse unnecessary code and thus slows down compilation for
|
||
everyone. Those unnecessary #includes of `<cstdint>` have been removed
|
||
and applications which need the `<cstdint>` header file need to
|
||
explicitly include it.
|
||
|
||
Without the patch, when compiling with gcc-13 you will get this error:
|
||
|
||
```
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp: In function 'std::string MFX::printCodecId(mfxU32)':
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp:60:3: error: 'uint8_t' was not declared in this scope
|
||
60 | uint8_t* data = reinterpret_cast<uint8_t*>(&id);
|
||
| ^~~~~~~
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp:29:1: note: 'uint8_t' is defined in header '<cstdint>'; did you forget to '#include <cstdint>'?
|
||
28 | #include "mfxloader.h"
|
||
+++ |+#include <cstdint>
|
||
29 |
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp:60:12: error: 'data' was not declared in this scope
|
||
60 | uint8_t* data = reinterpret_cast<uint8_t*>(&id);
|
||
| ^~~~
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp:60:36: error: 'uint8_t' does not name a type
|
||
60 | uint8_t* data = reinterpret_cast<uint8_t*>(&id);
|
||
| ^~~~~~~
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp:60:36: note: 'uint8_t' is defined in header '<cstdint>'; did you forget to '#include <cstdint>'?
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp:60:43: error: expected '>' before '*' token
|
||
60 | uint8_t* data = reinterpret_cast<uint8_t*>(&id);
|
||
| ^
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp:60:43: error: expected '(' before '*' token
|
||
60 | uint8_t* data = reinterpret_cast<uint8_t*>(&id);
|
||
| ^
|
||
| (
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp:60:44: error: expected primary-expression before '>' token
|
||
60 | uint8_t* data = reinterpret_cast<uint8_t*>(&id);
|
||
| ^
|
||
/builddir/build/BUILD/MediaSDK-intel-mediasdk-22.6.4/api/mfx_dispatch/linux/mfxparser.cpp:60:50: error: expected ')' before ';' token
|
||
60 | uint8_t* data = reinterpret_cast<uint8_t*>(&id);
|
||
| ^
|
||
| )
|
||
```
|
||
|
||
Fixes issue #2954 .
|
||
---
|
||
api/mfx_dispatch/linux/mfxparser.cpp | 1 +
|
||
1 file changed, 1 insertion(+)
|
||
|
||
diff --git a/api/mfx_dispatch/linux/mfxparser.cpp b/api/mfx_dispatch/linux/mfxparser.cpp
|
||
index 9d3823ec3e..beea53220c 100644
|
||
--- a/api/mfx_dispatch/linux/mfxparser.cpp
|
||
+++ b/api/mfx_dispatch/linux/mfxparser.cpp
|
||
@@ -23,6 +23,7 @@
|
||
#include <stdlib.h>
|
||
#include <string.h>
|
||
|
||
+#include <cstdint>
|
||
#include <list>
|
||
|
||
#include "mfxloader.h"
|