From 8f907bc9a22a00e38d5f9bf5e04bd134c2861ace Mon Sep 17 00:00:00 2001 From: ocornut Date: Tue, 24 Jan 2023 15:59:01 +0100 Subject: [PATCH] imgui_freetype: fix warnings (#6104), fix typos. (#6079) --- misc/freetype/README.md | 2 +- misc/freetype/imgui_freetype.cpp | 15 +++++++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/misc/freetype/README.md b/misc/freetype/README.md index 5fcfc2d79..140ae2257 100644 --- a/misc/freetype/README.md +++ b/misc/freetype/README.md @@ -24,7 +24,7 @@ See https://gist.github.com/ocornut/b3a9ecf13502fd818799a452969649ad - Oversampling settins are ignored but also not so much necessary with the higher quality rendering. -### Comparaison +### Comparison Small, thin anti-aliased fonts typically benefit a lot from FreeType's hinting: ![comparing_font_rasterizers](https://user-images.githubusercontent.com/8225057/107550178-fef87f00-6bd0-11eb-8d09-e2edb2f0ccfc.gif) diff --git a/misc/freetype/imgui_freetype.cpp b/misc/freetype/imgui_freetype.cpp index 78ef29397..7361566e0 100644 --- a/misc/freetype/imgui_freetype.cpp +++ b/misc/freetype/imgui_freetype.cpp @@ -43,13 +43,16 @@ #include FT_SYNTHESIS_H // #ifdef _MSC_VER +#pragma warning (push) #pragma warning (disable: 4505) // unreferenced local function has been removed (stb stuff) #pragma warning (disable: 26812) // [Static Analyzer] The enum type 'xxx' is unscoped. Prefer 'enum class' over 'enum' (Enum.3). #endif -#if defined(__GNUC__) +#ifdef __GNUC__ +#pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wpragmas" // warning: unknown option after '#pragma GCC diagnostic' kind #pragma GCC diagnostic ignored "-Wunused-function" // warning: 'xxxx' defined but not used +#pragma GCC diagnostic ignored "-Wsubobject-linkage" // warning: 'xxxx' has a field ‘xxxx’ whose type uses the anonymous namespace #endif //------------------------------------------------------------------------- @@ -348,7 +351,7 @@ namespace IM_ASSERT(0 && "FreeTypeFont::BlitGlyph(): Unknown bitmap pixel mode!"); } } -} +} // namespace #ifndef STB_RECT_PACK_IMPLEMENTATION // in case the user already have an implementation in the _same_ compilation unit (e.g. unity builds) #ifndef IMGUI_DISABLE_STB_RECT_PACK_IMPLEMENTATION @@ -779,3 +782,11 @@ void ImGuiFreeType::SetAllocatorFunctions(void* (*alloc_func)(size_t sz, void* u GImGuiFreeTypeFreeFunc = free_func; GImGuiFreeTypeAllocatorUserData = user_data; } + +#ifdef __GNUC__ +#pragma GCC diagnostic pop +#endif + +#ifdef _MSC_VER +#pragma warning (pop) +#endif