[erlang-questions] Strings - deprecated functions
Sat Nov 25 02:49:58 CET 2017
A couple of years ago I was working through a Java book.
Not one of the examples got a clean compile. Not one.
oddly enough, it was string-handling functions that had
been deprecated, and oddly enough, in my environment the
old functions still did everything I needed.
It's not just Erlang and Java. I had C code using some of
the classic string functions in ways I had carefully ensured
were correct. Porting to the next version of the Unix
flavour I was using, the linker screamed at me about unsafe
functions. Since I wanted other people to use the program
and didn't want them looking down on me, I spent a merry
couple of hours changing the code to use memcpy instead of
strcpy and so on.
Again, I have a program which works fine in Solaris 10, Open
Solaris, and Solaris 11 Express. It uses a mix of old
functions (hey, if the code still works, why change it, am I
right?) and new functions (if you can call POSIX 2008 "new".)
But OpenIndiana? I am still baffled as to what combination of
feature test macros I can set to make the program compile, and
am coming to the conclusion that there isn't one.
Did I mention the trouble I've been having with Ubuntu 17.10?
I'll spare you that, but let's just say that putting standard
headers in nonstandard places really really does not help.
I don't really have a solution. It seems as though the only
thing you can do to ensure that old code continues to work is
to keep a VM imagine with a complete copy of the environment
it used to work in.
Good luck plugging new libraries into that, though.
More information about the erlang-questions