[PATCH] D122734: [CUDA][HIP] Fix mangling number for local struct

Yaxun Liu via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu May 12 08:15:59 PDT 2022


yaxunl marked an inline comment as done.
yaxunl added a comment.

In D122734#3508294 <https://reviews.llvm.org/D122734#3508294>, @uabelho wrote:

> Hi,
>
> I noticed when compiling with gcc 9.3.0 that we get a bunch of new warnings with this patch:
>
>   [1/351] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/MicrosoftCXXABI.cpp.o
>   ../../clang/lib/AST/MicrosoftCXXABI.cpp:57:12: warning: 'virtual unsigned int {anonymous}::MicrosoftNumberingContext::getManglingNumber(const clang::VarDecl*, unsigned int)' was hidden [-Woverloaded-virtual]
>      57 |   unsigned getManglingNumber(const VarDecl *VD,
>         |            ^~~~~~~~~~~~~~~~~
>   ../../clang/lib/AST/MicrosoftCXXABI.cpp:80:12: warning:   by 'virtual unsigned int {anonymous}::MSHIPNumberingContext::getManglingNumber(const clang::TagDecl*, unsigned int)' [-Woverloaded-virtual]
>      80 |   unsigned getManglingNumber(const TagDecl *TD,
>         |            ^~~~~~~~~~~~~~~~~
>   ../../clang/lib/AST/MicrosoftCXXABI.cpp:46:12: warning: 'virtual unsigned int {anonymous}::MicrosoftNumberingContext::getManglingNumber(const clang::BlockDecl*)' was hidden [-Woverloaded-virtual]
>      46 |   unsigned getManglingNumber(const BlockDecl *BD) override {
>         |            ^~~~~~~~~~~~~~~~~
>   ../../clang/lib/AST/MicrosoftCXXABI.cpp:80:12: warning:   by 'virtual unsigned int {anonymous}::MSHIPNumberingContext::getManglingNumber(const clang::TagDecl*, unsigned int)' [-Woverloaded-virtual]
>      80 |   unsigned getManglingNumber(const TagDecl *TD,
>         |            ^~~~~~~~~~~~~~~~~
>   ../../clang/lib/AST/MicrosoftCXXABI.cpp:42:12: warning: 'virtual unsigned int {anonymous}::MicrosoftNumberingContext::getManglingNumber(const clang::CXXMethodDecl*)' was hidden [-Woverloaded-virtual]
>      42 |   unsigned getManglingNumber(const CXXMethodDecl *CallOperator) override {
>         |            ^~~~~~~~~~~~~~~~~
>   ../../clang/lib/AST/MicrosoftCXXABI.cpp:80:12: warning:   by 'virtual unsigned int {anonymous}::MSHIPNumberingContext::getManglingNumber(const clang::TagDecl*, unsigned int)' [-Woverloaded-virtual]
>      80 |   unsigned getManglingNumber(const TagDecl *TD,
>         |            ^~~~~~~~~~~~~~~~~
>
> No idea if it's important or if gcc is overly picky.

Thanks for letting me know. This is due to the newly added function hiding other overloaded functions in the parent class. I will fix it by adding using MicrosoftNumberingContext::getManglingNumber to MSHIPNumberingContext.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D122734/new/

https://reviews.llvm.org/D122734



More information about the cfe-commits mailing list