I have written an application previously in ansi C that is using FreeRTOS and works 100%.
Now, I have converted the code to C++ and ready to try using the C++ wrappers and add in the calls to FreeRTOS. At this point it’s tasks and queues. I’m using IAR EWARM 7.5.
Just including the TaskCPP file has caused a silicon slip in the compiler. The 2 errors I am getting are :
Error[Pe265]: member “Task::handle” (declared at line 169) is inaccessible C:\Users\grr\Documents\IAR Embedded Workbench\FreeRTOSV8.2.0\FreeRTOS\Source\include\TaskCPP.h 223
and
Error[Pe245]: a nonstatic member reference must be relative to a specific object C:\Users\grr\Documents\IAR Embedded Workbench\FreeRTOSV8.2.0\FreeRTOS\Source\include\TaskCPP.h 223
As you can see, both are at the same line. What is causing this error, and better yet, are there any basic examples to be found on using these wrappers?
No - not at all - quite the opposite - I’ve not used it myself but heard
good things about it. It’s just that there are a few wrappers around
and I was wondering which you were using to see if it was something that
can be supported on this forum. Richard Damon is a regular poster here
so hopefully he will see your question and be able to provide some advise.
Ok, thanks. For some reason, I was under the impression that Richard Damon worked (or contributed time to) for FreeRTOS.
Yes, I hope he, or someone that may have used them before can provide some insight.
Maybe it would have been better to keep ansi-C and FreeRTOS in it’s “home state”, and lib the C++ stuff.
That’s my wrapper, I don’t “work” for FreeRTOS but been around a while helping where I can. I will need to look at that error on my machine with the code. Sounds a bit like an error that I remember working on, maybe I got a commit at the wrong time or missed a commit.
Looking at the code on GitHub, a quick fix would be to convert the private on line 168 to protected (and best to add a private again after line 169.