On 11/08/2017 08:33 AM, Mark Rivers wrote:
> All of this code is C++. In general it is recommended not to use NULL at
> all in C++, use 0 instead. So I would suggest changing "(char) NULL" to "0".
To clarify and amplify what Mark wrote, the character with value zero
used to be named NUL (single L) in the old ASCII charts that I remember,
and I have also seen it called Nil. Apparently some people re-use the
macro NULL for this as in the code that Jörn showed, but to me doing so
is very confusing. I generally use 0 (no quotes) as Mark suggests, while
others use '\0' which explicitly tells the compiler that this is a char.
> -----Original Message-----
> From: firstname.lastname@example.org [mailto:email@example.com
] On Behalf Of Jörn Dreyer
> Sent: Wednesday, November 08, 2017 8:13 AM
> To: firstname.lastname@example.org
> Subject: motor module compile problems
> I have had some trouble compiling the motor module (from git) on a openSuSE
> Tumbleweed system with gcc 7.2.1. It fails in all motor drivers at the calls
> of send_message where the last parameter is passed as (char) NULL. But in the
> definition of send_message the last parameter is defined as char*.
> What would be the correct fix for this? One could
> 1. modify all calls to send_message(..,..,(char) NULL) to
> send_message(..,..,(char*) NULL), or
> 2. modify the definition of send_message(..,..,char*)to
> send_message(..,..,char), but then other calls may fail.
> I chose the first solution to get it compiled. If needed I can send a patch
> file to correct all necessary lines.
Arguing for surveillance because you have nothing to hide is no
different than making the claim, "I don't care about freedom of
speech because I have nothing to say." -- Edward Snowdon