Age | Commit message (Collapse) | Author | Files | Lines |
|
Fixes an issue with certain glibc versions using the emulated
`_Static_assert` (allowing only one assertion per scope) despite the
compiler having built-in support for the c11 version.
Fixes builds in Debian stretch and other distributions.
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
|
|
This introduces the macro `STATIC_ASSERT(ex, msg)`, that works like its
C11 counterpart `_Static_assert(ex, msg)`, on compilers that support it.
Support is provided, depending on the compiler:
- When in C11 mode, use the native `_Static_assert`
- If the compiler advertises having the `c_static_assert` feature, use
`_Static_assert` (according to the clang documentation).
- If the compiler is GCC >= 4.7 (tested to be compatible), use
`_Static_assert` (nonstandard extension, C11 feature available in C99).
- If the compiler is MSVC (all the currently supported versions have
been tested to be compatible), then use `static_assert` (nonstandard
extension, C++ feature)
- Otherwise, define it as a no-op macro.
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
instead of 4.5
- The support on GCC 4.5 is incomplete, and in order to build Hercules,
GCC >= 4.6 is recommended
Signed-off-by: Haru <haru@dotalux.com>
|
|
Some possible buffer overflows.
Add attribute for mark fallthrough cases.
Skipped libconfig warnings.
|
|
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- The provided test cases return success on all currently supported FreeBSD versions (9 and 10)
- Fixes #1283
|
|
- Fixes compilation on gcc 4.4 for the brave ones who still want to use
it (we recommend gcc 4.7 or newer)
- Removes some warnings about unknown pragmas on MSVC
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Fixes #903 and other similar problems
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Please report any issues
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Thanks to Haru
|
|
- Automatically zeroed variables are now zeroed in the correct size,
regardless of padding.
- Special thanks to Ind.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
This includes, and is not limited to: mixed or wrong indentation, excess
whitespace (horizontal and vertical), misalignment, trailing spaces.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Functions that expect a printf-style format string are now marked as
such, so that gcc/clang will emit a warning warn you if you mismatch
format string and arguments.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Neither our code nor 3rdparty code is, (or will compile as) C++,
regardless of those checks.
- Special thanks to panikon.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Complies with CERT DCL37-C
- Fixes issue #293 (special thanks to elfring)
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
This reverts commit 94657284973f4037596bae468ebfbee5c217e02b.
|
|
This reverts commit b6b3f58795288701d0e162d43fa6f0a47af913b3.
Fixes issue 8184
http://hercules.ws/board/tracker/issue-8184-cart-related/
|
|
- Changed order according to the (upcoming) code style guidelines.
- Fixes several issues caused by missing headers when their include
order is changed or in plugins.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
http://hercules.ws/board/topic/4283-introducing-hpm-datacheck/
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Fixed some warnings in NetBSD (5.x and 6.x) and Solaris (11)
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Warnings detected thanks to Xcode's compiler settings (more strict by
default) and clang, warnings mostly but not only related to data sizes
on 64 bit systems, that were silenced until now by very lax compiler
settings.
- This also decreases by a great deal the amount of warnings produced by
MSVC in x64 mode (for the adventurous ones who tried that)
- Also fixed (or silenced in case of false positives) the potential
issues pointed out by the (awesome) clang static analyzer.
- Patch co-produced with Ind, I'm merging and committing in his place!
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Added Assert_ret, Assert_retv, Assert_retb, Assert_retr, working
similarly to the corresponding nullpo_ functions.
- Moved Assert-related macros to nullpo.h, since they share some
functions.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Sanitized all potentially unsafe macros (related eA:15259)
- Improved some function-like macros to evaluate their argument only
once and keep it in a temporary variable. This improves performance
in the damage calculation related code.
Signed-off-by: Haru <haru@dotalux.com>
|
|
partial usage of ea:15242 (ai4rei) -- will revisit the remaining.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Credits to Ind for the fix, thanks to Takkun for reporting it
Signed-off-by: Haru <haru@dotalux.com>
|
|
Fixes bugreport:7645
http://hercules.ws/board/tracker/issue-7645-rev-12302-compiler-error-and-warnings-on-gcc-49
Special thanks to Takkun for VS2012 testing and info
Signed-off-by: Haru <haru@dotalux.com>
|
|
Fixed a bug when removing last element of binary heap (its parent would
be removed instead if it had the same value).
Binary heap now allows custom swapper function/macro. Added `swap_ptr`
macro to swap two pointers in place (`swap` is not suitable for
pointers). This allows to store pointers in binary heap.
|
|
Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
|
|
[16969:16991/trunk/src/] will be re-committed in the next 24 hours.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16992 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
Removed /SAFESEH option from MSVC11 projects.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16968 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16807 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
added type 'sysint' to cbasetypes, which's the width of the platform the release gets compiled for.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16256 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
we have to check explicitly for compiler and not only on Platform ... )
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16218 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
- forceinline -> will force the compiler to always inline the given method
- ra_algin(n) -> align to (n) .. (see: http://msdn.microsoft.com/en-us/library/83ythb65(v=vs.80).aspx for more informations).
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16215 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14955 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
unsigned).
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14896 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
stdint.h.
Used the INT*_C() macro to give the MIN/MAX constants a proper size suffix.
Merged the 64bit integers section with the main integer section.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14875 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14874 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14873 54d463be-8e91-2dee-dedb-b68131a5f0ec
|