Closed ramcharan-palnati closed 2 years ago
@matt-cross You are the one who added the CMake magical generation of node sizes in get_container_node_sizes.cmake
. Would you mind taking a look at this?
I tried to reproduce this on my Mac and I cannot reproduce the issue. I am using:
From the error it looks like a shell quoting issue. According to CMake docs for add_compile_definition() it should escape the value automatically for the build system; it's not clear to me what could be causing it to fail to escape this in your environment.
I am proposing a workaround that passes in type names without spaces on the compiler command line and then has corresponding using
declarations in the source files to convert them back to C++ types.
In testing this, I also found that the std library implementation on MacOS (perhaps just in clang) wraps some container value types in a structure that is not the node type yet has the same size - see https://github.com/llvm/llvm-project/blob/main/libcxx/include/map#L810-L831 . This was causing this code to detect a node type of 0, I added something to handle this issue as well.
Merged, let me know if that helps.
Hi,
While building foonathan memory on mac64 with clang++ compiler , I get fatal error from cmake : Could you help me on this. Thanks in advance.