Kp
c9dff229f1
Remove dead AI fire leading code
2015-07-25 23:10:47 +00:00
Kp
822f8ad5c0
Use __builtin_object_size to check some unchecked ranges
2015-07-25 23:10:47 +00:00
Kp
2f847030ce
Combine partial_range_error reporting
...
Use iterator type instead of container type, so that T[1] and T[2] use
the same reporting function. This saves ~7k in an LTO build.
2015-07-25 23:10:47 +00:00
Kp
3f6a402bfd
Include bound in partial_range always_error function name
2015-07-25 23:10:47 +00:00
Kp
c942d28197
Use accessor for grs_bitmap::bm_type
2015-07-25 23:10:47 +00:00
Kp
b7838318b1
Fix valptridx for -fno-inline
2015-07-25 23:10:46 +00:00
Kp
9bfea35e4f
Use forward-declaration header for gr.h
2015-07-25 23:10:45 +00:00
Kp
15fb75c1c7
Fix check_header_includes build
2015-07-25 23:10:45 +00:00
Kp
cdb113a050
Diagnose including compiler-type_traits without dxxsconf.h
2015-07-25 23:10:45 +00:00
Kp
8594086b23
Move magic_constant definition into valptridx
2015-07-21 02:57:27 +00:00
Kp
6bd93e466f
Guard args.h for LTO -Wodr
2015-07-18 21:01:56 +00:00
Kp
4c200342dd
Use range_for for PHYSFS archive types
2015-07-18 21:01:55 +00:00
Kp
095e64fd5a
Support serializing enum class
2015-07-18 21:01:55 +00:00
Kp
1c5399427a
Work around clang name lookup bug #13983
...
clang searches scopes in the wrong order, causing strange failures when
an inner template has a parameter with the same name as a type in an
outer scope.
clang bug report: <https://llvm.org/bugs/show_bug.cgi?id=13983 >
2015-07-13 01:09:37 +00:00
Kp
6c94416a90
Pass array from ptridx factory
2015-07-13 01:09:37 +00:00
Kp
fa8dcc9113
Explicitly delete basic_ptridx(pointer_type); require array
...
Require the array argument for basic_ptridx, which is supplied
automatically when the factory is used.
2015-07-13 01:09:37 +00:00
Kp
1adb56f16b
Make draw_mine_all static
2015-07-13 01:09:36 +00:00
Kp
ff5bb37c5c
Combine basic_ptr_global_factory, basic_vptridx_global_factory
2015-07-13 01:09:36 +00:00
Kp
73fdd59225
Require exact type for valptridx factory
2015-07-13 01:09:36 +00:00
Kp
745de17c41
Use T::index_type for highest_valid
2015-07-13 01:09:36 +00:00
Kp
fdd2356eac
Use segptridx for Cursegp, Markedsegp
2015-07-12 01:04:18 +00:00
Kp
8b7c5c3e2b
Rewrite valptridx
...
Move decisions out to policy classes. Provide trivial copy
construction/assignment. Simplify checking for unsafe conversions.
2015-07-09 03:12:45 +00:00
Kp
658102a868
Improve static_assert test
...
Previously, SConstruct tested whether static_assert worked with trivial
constant expressions. Extend the test to more complicated expressions
like the ones used in the program.
Replace the typedef based approach with an inline enum to avoid warnings
about unused local typedefs.
Allow use with compilers that lack working static_assert or that cannot
accept complicated expressions. Add a non-checking definition that uses
the input parameter. This prevents warnings when types or constants are
used only for the static_assert.
2015-07-09 03:12:45 +00:00
Kp
4a742e3fc4
Parenthesize static_assert expression
...
When static_assert is a macro, it must have two arguments as seen by the
preprocessor. Add an identity mapping to the native case to enforce
this, and fix up all the sites that break with the new rule.
2015-07-09 03:12:45 +00:00
Kp
d73e5a24c3
Reduce scope of ifdef(D1||D2)
2015-07-04 21:01:17 +00:00
Kp
968cdbecf4
Add non-aborting UserError for user-caused fatal errors
2015-06-16 03:15:40 +00:00
Kp
ce72014e2e
Always parse WORDS_BIGENDIAN and !WORDS_BIGENDIAN
2015-06-13 22:42:21 +00:00
Kp
302e344979
Warn when UI_GADGET_* are immediately freed
2015-06-13 22:42:19 +00:00
Kp
9ecb8d8601
Use fwdvalptridx instead of inline forward declarations
2015-06-13 22:42:16 +00:00
Kp
286753d210
Fix valptridx operator& definition
2015-06-13 22:42:15 +00:00
Kp
fcaacaebde
Factor out valptridx test for *_none
2015-06-13 22:42:15 +00:00
Kp
8358dfcd0b
Support biased pointers to help memory debuggers
2015-06-13 22:42:15 +00:00
Kp
d5b5846657
Fix serial *_type -fno-inline build
2015-06-11 03:06:58 +00:00
Kp
5124c510f8
Fix serial endian_access -fno-inline build
2015-06-11 03:06:58 +00:00
Kp
64ee9e0047
Improve memdebug d_strdup trace
2015-06-11 03:06:58 +00:00
Kp
7c436f1fbb
Merge pull #39 into unification/master
...
Requested-by: btb <https://github.com/dxx-rebirth/dxx-rebirth/pull/39 >
Acked-by: Matt1360 <https://github.com/dxx-rebirth/dxx-rebirth/pull/39#issuecomment-88712761 >
Acked-by: zico <https://github.com/dxx-rebirth/dxx-rebirth/pull/39#issuecomment-88907523 >
2015-06-07 16:21:37 +00:00
Kp
3718678576
Reduce cvar.h includes
2015-06-07 16:20:46 +00:00
Kp
f7de7d132a
Add initial support for minimum_size
2015-06-05 02:34:40 +00:00
Kp
a8bb0ad07d
Use integral_constant for serial constants
2015-06-05 02:34:40 +00:00
Kp
39b705b352
Use integral_constant for grant masks
2015-06-05 02:34:40 +00:00
Kp
a918692a23
Preprocess out EDITOR-only vm_vec_ang_2_matrix
...
Remove vm_vec_ang_2_matrix from non-EDITOR builds so that
sincos_2_matrix has only one caller, allowing compiler to implicitly
inline it.
2015-06-02 03:03:32 +00:00
Kp
0141e9ed78
Remove redundant fix_sincos calls
...
The result is immediately overwritten. Skip computing it.
2015-06-02 03:03:32 +00:00
Kp
babfa9d8e7
Construct d_event_mousebutton
2015-05-28 03:08:39 +00:00
Kp
692038f284
Cache modifier keys
2015-05-28 03:08:38 +00:00
Kp
25186ca984
Remove write-only keyd_last_released
2015-05-28 03:08:38 +00:00
Kp
badad2ef33
Remove write-only keyd_last_pressed
2015-05-28 03:08:38 +00:00
Kp
abfd8e4d83
Split mouse_toggle_cursor
2015-05-28 03:08:38 +00:00
Kp
73300a285d
Merge "change u_int*_t to C99 standard uint*_t"
...
Requested-by: btb <https://github.com/dxx-rebirth/dxx-rebirth/pull/67 >
Acked-by: Matt1360 <https://github.com/dxx-rebirth/dxx-rebirth/pull/67#issuecomment-104806115 >
2015-05-23 17:36:29 +00:00
Kp
63cea8bb23
Fix gcc-4.6 ui build
...
gcc-4.6 chokes on `static constexpr type value{};`, but accepts
`static constexpr auto value = type{};`
Fixes: 95e3ac1e5b
("Use integral_constant for UI kind")
2015-05-22 03:33:19 +00:00
Kp
0fc7b1898c
Fix gcc-4.6 serial build
...
gcc-4.6 chokes on `static constexpr type value{};`, but accepts
`static constexpr auto value = type{};`
Fixes: 9595aec2fb
("Use integral_constant for endian constants")
2015-05-22 03:33:19 +00:00