Can't find usage of a method from template class

Answered

I have a simple example of using templates. 

struct Message {
int value;
};

class ConcreteTemplateMessageReceiver {
public:
Message receive() {
return {};
}
};


template<typename R>
class ClientB {
R receiver;
public:
ClientB(R receiver) : receiver(receiver) {}

void doSomething() {
Message message = receiver.receive();
}
};


int main() {
ConcreteTemplateMessageReceiver concreteTemplateMessageReceiver;
ClientB<ConcreteTemplateMessageReceiver> clientB{concreteTemplateMessageReceiver};
clientB.doSomething();
return 0;
}

 

CMakeLists.txt

cmake_minimum_required(VERSION 3.10)
project(CPP_Playground)

set(CMAKE_CXX_STANDARD 17)

add_executable(CPP_Playground main.cpp)

 

CLion can't find usage of ConcreteTemplateMessageReceiver::receive function. Is it expected?

 

0
1 comment

Hi, Alexandr!

We have a related issue in our tracker: https://youtrack.jetbrains.com/issue/CPP-746. Feel free to comment or upvote. Follow it to get updates.

 

0

Please sign in to leave a comment.