From: Zbigniew Jędrzejewski-Szmek Date: Mon, 9 May 2016 15:24:08 +0000 (-0400) Subject: locale-util: mark special_glyph() as _const_ X-Git-Tag: v231.3~153 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=f6999d6a1910bb438a7b1c051c44af50f14b42a8 locale-util: mark special_glyph() as _const_ _const_ means that the caller can assume that the function will return the same result every time (and will not modify global memory). special_glyph() meets this: even though it depends on global memory, that part of global memory is not expected to change. This allows the calls to special_glyph() to be optimized, even if -flto is not used. --- diff --git a/src/basic/locale-util.c b/src/basic/locale-util.c index 8134f61a7..ada0a28cd 100644 --- a/src/basic/locale-util.c +++ b/src/basic/locale-util.c @@ -273,7 +273,7 @@ out: const char *special_glyph(SpecialGlyph code) { - static const char *draw_table[2][_SPECIAL_GLYPH_MAX] = { + static const char* const draw_table[2][_SPECIAL_GLYPH_MAX] = { /* ASCII fallback */ [false] = { [TREE_VERTICAL] = "| ", diff --git a/src/basic/locale-util.h b/src/basic/locale-util.h index 353b7845f..0630a034a 100644 --- a/src/basic/locale-util.h +++ b/src/basic/locale-util.h @@ -67,7 +67,7 @@ typedef enum { _SPECIAL_GLYPH_MAX } SpecialGlyph; -const char *special_glyph(SpecialGlyph code); +const char *special_glyph(SpecialGlyph code) _const_; const char* locale_variable_to_string(LocaleVariable i) _const_; LocaleVariable locale_variable_from_string(const char *s) _pure_;