[Darshan-users] Compilation problems when using darshan-log-format.h in C++
ssnyder at mcs.anl.gov
Fri Jan 24 15:28:42 CST 2020
Thanks for sharing this with us, Francois. I don't think we've had many users writing C++ analysis routines for Darshan logs, so probably explains why we haven't ran into this yet.
I went ahead and pushed your fix to the master branch and we'll include it in our next release.
Let us know if you have any more issues!
On 1/23/20 6:39 AM, François Trahay wrote:
I'm working on a C++ software that reads darshan files, and I face a compilation problem when compiling with g++. You can reproduce the problem with test_darshan-log-format.cpp:
$ cat test_darshan-log-format.cpp:
$ g++ -c test_darshan-log-format.cpp -I/home/trahay/Soft/opt/darshan/darshan-util/install/include
In file included from test_darshan-log-format.cpp:3:
/home/trahay/Soft/opt/darshan/darshan-util/install/include/darshan-log-format.h:135:29: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
135 | X(DARSHAN_NULL_MOD, "NULL", DARSHAN_NULL_VER, NULL) \
/home/trahay/Soft/opt/darshan/darshan-util/install/include/darshan-log-format.h:161:23: note: in definition of macro ‘X’
161 | #define X(a, b, c, d) b,
/home/trahay/Soft/opt/darshan/darshan-util/install/include/darshan-log-format.h:164:5: note: in expansion of macro ‘DARSHAN_MODULE_IDS’
164 | DARSHAN_MODULE_IDS
The problem comes from darshan-log-format.h that defines "static char * const darshan_module_names" instead of "static const char * const darshan_module_names".
The attached patch fixes the problem.
Darshan-users mailing list
Darshan-users at lists.mcs.anl.gov<mailto:Darshan-users at lists.mcs.anl.gov>
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Darshan-users