Files
nethack/win/Qt
nhmall 6c61004b06 g++-12 bits, mostly Qt5 related
I forced a test compile to -std=c++20 mostly to see what we would
be up against. There was only a small number of things and they
are corrected in this commit.

c++20 has some issues with comparisons and bit twiddling between
different enums.

The vendor-supplied Qt5 header files triggered some of those issues as
well, so the qt_pre.h and qt_post.h NetHack header files were adjusted
to make those new warnings go away.  I have not tested Qt6 under the
new compiler and c++ version yet.

Because there are multiple pragmas in qt_pre.h now, the conditional
ifdef structure in there was modified a little to make maintenance
simpler and have a single pragma push at the top. The pragma pop
comes after the Qt vendor-supplied header files, and is done
in qt_post.h.

The display.h macro cmap_to_glyph() was used in
a Qt c++ file and triggered a series of warnings because of that.
Rather than write c++20-friendly versions of those macros, the
simple fix is to provide a function on the C side of things
to front the cmap_to_glyph() macro, so fn_cmap_to_glyph()
was added.

Also thrown into this commit, PatR picked up on the fact that for
yesterday's new warning in qt_menu.cpp, the compiler had correctly
picked up on the fact that the format range of the variable 'cash'
had been correctly upper-capped at 999999999L in the warning message
because of an assignment prior. He suggested that perhaps by also adding
    if (cash < 0)
       cash = 0;
the warning might be eliminated altogether.
After a test, that was proven to be correct, so yesterday's
more-kludgy change is reverted and replaced with that variable
variable restriction ahead of the snprintf().
2022-06-11 13:52:58 -04:00
..
2019-12-07 17:07:50 +01:00
2019-12-07 17:07:50 +01:00
2022-06-11 13:52:58 -04:00
2021-12-31 01:53:46 -08:00
2021-12-30 11:29:03 -08:00
2019-12-07 17:07:50 +01:00
2020-12-27 17:01:33 -08:00
2019-12-07 17:07:50 +01:00
2021-12-30 11:29:03 -08:00
2019-12-07 17:07:50 +01:00
2022-01-04 12:23:06 -08:00
2022-01-04 12:23:06 -08:00
2022-06-11 13:52:58 -04:00
2019-12-07 17:07:50 +01:00
2021-12-30 11:29:03 -08:00
2021-01-08 13:47:34 -08:00
2021-12-30 11:29:03 -08:00
2019-12-07 17:07:50 +01:00
2022-05-12 20:10:27 -04:00
2022-05-07 10:25:13 -04:00
2021-09-18 19:51:04 -04:00
2022-06-11 13:52:58 -04:00
2021-08-15 10:58:42 +03:00
2021-12-30 11:29:03 -08:00
2022-05-12 20:10:27 -04:00
2022-01-10 13:23:09 -08:00
2022-06-11 13:52:58 -04:00
2022-06-11 13:52:58 -04:00
2022-06-11 13:52:58 -04:00
2019-12-07 17:07:50 +01:00
2022-01-02 01:48:07 -08:00
2020-12-06 02:58:05 -08:00
2022-06-11 13:52:58 -04:00
2020-11-05 14:28:17 -08:00
2019-12-07 17:07:50 +01:00
2021-12-30 11:29:03 -08:00
2020-11-05 14:36:13 -08:00
2022-05-12 20:10:27 -04:00
2019-12-07 17:07:50 +01:00
2021-12-30 11:29:03 -08:00
2021-01-23 15:58:23 -08:00
2022-04-16 01:52:12 -07:00
2021-04-11 14:55:45 -07:00
2022-06-11 13:52:58 -04:00
2020-10-31 15:34:47 -07:00