Replace long_i with plain long.
long_i was just plain long, adding marker __w64, to be used by
Microsoft's compilers only, as an aid when transitioning from 32 bits to
64 bits. Purpose of this marker was, in fact, to make a 32 bit compiler
emit the same warnings that a 64 bit compiler would.
This __w64 marker is nowadays deprecated by said compilers, and use of a
real 64 bit compiler is recommended instead. See
http://msdn.microsoft.com/en-us/library/s04b5w00.aspx for details.
So, there's no reason to maintain this anymore, and thus is removed.
Refactoring long into int64_t is not attempted, as doing that in a bulk
way is too much complicated. That is left to be done later, on a
file-by-file basis, probably intermixed with file-by-file -Wconversion
activation.
Requested in #459.
- Replace int_u with uint32_t (same size, should give no problems).
In fact, only usage found seems to be dead code (some functions in
ui.h seem not to be used anymore).
- Remove int_u typedef.
Requested in #459.
- Replace short_u with uint16_t (same size, should give no problems).
- When possible, remove explicit downcasts so that they are found when
flag -Wconversion enabled.
- Remove short_u typedef.
Requested in #459.
Files changed: charset.c, buffer.c, diff.c, edit.c,
ex_cmds.c, ex_cmds2.c and ex_docmd.c.
The remaining alloc's in these files require more careful attention to
remove.
reverting broad cosmetic/style change because:
- increases merge-conflicts
- increases overhead of merging upstream Vim patches
- reasons for change are ambiguous, so default to no change
I've checked all uses of ga_concat in the codebase:
- ex_cmds2.c
- ex_getln.c
- eval.c
- message.c
- regexp-nfa.c
- term.c
- spell.c
None of them concats the garray with itself. This makes it safe to use the
faster memcpy() instead of memmove(). This change was also documented.
Less useless strlen(), stpcpy() is a more natural fit for this task.
ga_concat_strings() still has too much strlen() but that would be ugly to
remove for a function that's not used very often (just once in the current
codebase).
- xrealloc will call xmalloc if the input pointer is NULL, no need to check
twice.
- use the early-quit idiom to decrease the indentation, which enhances
readability.