来自自动生成的cpp grpc文件的Coverity扫描错误

问题描述

在我的cpp项目中,我定义了一些grpc服务。 自动生成代码包含以下代码

AddMethod(new ::grpc::internal::RpcServiceMethod(
      TeeService_method_names[1],::grpc::internal::Rpcmethod::norMAL_RPC,new ::grpc::internal::RpcmethodHandler<
          my_proto::Request,my_proto::Response>(
          std::mem_fn(&my_proto::Service::Read),this)));

在Coverity静态扫描中,出现以下错误(在/usr/include/c++/7.5.0/functional.h中)

未定义CID(第1项,共1项):越界读取(超限)

  1. overrun-local:通过取消引用指针this-> _ M_pmf
  2. 来使16个字节的数组在字节偏移23处溢出

在深入研究这一点时,我发现错误是由于取消引用mem_fn中的指针而引起的。

我不确定这是否是grpc问题,或者我做错了什么。

将很乐意提供帮助:)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)