Error with C++ Mex (Linux) in MatlabDataArray/VariableInfo.hpp
1 次查看(过去 30 天)
显示 更早的评论
Hello,
I'm trying to compile a C++ Mex file in Linux + CMake, with Matlab 2020b.
I've followed your guide and included mexAdapter.hpp.
I get this error error: /usr/local/MATLAB/R2020b/extern/include/MatlabDataArray/VariableInfo.hpp(137): error #858: type qualifier on return type is meaningless:
typedef const void(*SymbolInfoSetValueFcnPtr)(detail::RefCounted*, size_t, impl::ArrayImpl*);
Can't compile due to that. Any idea how to fix this?
Thanks,
Amit
0 个评论
回答(1 个)
Neha
2024-5-10
Hi Amit,
The error message "error #858: type qualifier on return type is meaningless" points out that applying a type qualifier like const to the return type of a function pointer is not meaningful. In the context of your typedef declaration, the issue arises from trying to make the return type of the function pointer const void. Non-class rvalues (like primitives returned by functions) cannot be modified, so they inherently behave as if they are const, even without being explicitly declared as such.
Hope it helps!
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Call C++ from MATLAB 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!