diff -rupN --no-dereference binutils-2.39/binutils/readelf.c binutils-2.39-new/binutils/readelf.c --- binutils-2.39/binutils/readelf.c 2022-10-30 12:41:26.462023746 +0100 +++ binutils-2.39-new/binutils/readelf.c 2022-10-30 12:41:27.687023752 +0100 @@ -13177,11 +13177,13 @@ print_dynamic_symbol (Filedata *filedata unsigned int vis = ELF_ST_VISIBILITY (psym->st_other); printf (" %-7s", get_symbol_visibility (vis)); +#if 0 /* Check to see if any other bits in the st_other field are set. Note - displaying this information disrupts the layout of the table being generated, but for the moment this case is very rare. */ if (psym->st_other ^ vis) printf (" [%s] ", get_symbol_other (filedata, psym->st_other ^ vis)); +#endif } printf (" %4s ", get_symbol_index_type (filedata, psym->st_shndx)); @@ -13235,7 +13237,17 @@ print_dynamic_symbol (Filedata *filedata version_string); } - putchar ('\n'); +#if 1 + { + unsigned int vis = ELF_ST_VISIBILITY (psym->st_other); + + /* Check to see if any other bits in the st_other field are set. */ + if (psym->st_other ^ vis) + printf (" \t[%s]", get_symbol_other (filedata, psym->st_other ^ vis)); + } +#endif + + putchar ('\n'); if (ELF_ST_BIND (psym->st_info) == STB_LOCAL && section != NULL