Subject: Re: bug#26737: Making sure that comments can be made

From: Kei Kebreau <[email-masked]>
Date: Tue, 30 May 2017 14:13:50 -0400

Marius Bakke <[email-masked]> writes:

> Kei Kebreau <[email-masked]> writes:
>
>> Can I commit this (note: I will enable the release build, which
>> optimizes for size)? And for games with both ncurses and SDL tiles
>> interfaces, should the two interfaces be separate outputs or separate
>> packages all together?
>
> Since there has been no feedback for a month, I think you can go ahead
> and commit it (see HACKING).
>
> I do find the s/<math.h>/<cmath> substitution a bit odd. Is there an
> upstream issue about it? I think we should do that in a phase instead,
> since it's apparently not a problem with other compilers(?).
>

Long story short, standards-compliant C++ code that needs
C-standard-compatibile functions uses either:

* <c[header]> and std namespace function names or
* <[header].h> and global namespace function names.

This program tries to mix and match these methods. While it may work
with other compilers, this code isn't guaranteed to work with the C++
standard. As a result, either <math.h> is replaced with <cmath> or
functions like std::pow are replaced with ::pow. I simply chose the former.

See http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3797.pdf#section.D.5

> Different outputs is generally better than separate packages, but I
> guess it depends on the case.

I'll experiment with this some time soon, then.