https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99318
Bug ID: 99318 Summary: [10/11 Regression] -Wdeprecated-declarations where non-should be? Product: gcc Version: 10.2.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: gcc-bugs at marehr dot dialup.fu-berlin.de Target Milestone: --- Hello gcc-team, since gcc 10 the following code throws a deprecation warning, even though it doesn't use any deprecated code. ```c++ template <typename derived_type> class alphabet_base { [[deprecated("message")]] unsigned char_to_rank_table(char const chr) { using index_t = unsigned; return derived_type::char_to_rank[static_cast<index_t>(chr)]; } }; ``` gives the following warning: ``` <source>: In member function 'unsigned int alphabet_base<derived_type>::char_to_rank_table(char)': <source>:7:55: warning: 'unsigned int alphabet_base<derived_type>::char_to_rank_table(char)' is deprecated: message [-Wdeprecated-declarations] 7 | return derived_type::char_to_rank[static_cast<index_t>(chr)]; | ^~~~~~~ <source>:4:40: note: declared here 4 | [[deprecated("message")]] unsigned char_to_rank_table(char const chr) | ^~~~~~~~~~~~~~~~~~ Compiler returned: 0 ``` See https://godbolt.org/z/4cWzMr Thank you!