Pacify GCC 9.2.1 20190927 -O3

Original problem report by N. Jackson in:
I found some other warnings when I used gcc, and fixed them
with this patch.
* lib-src/etags.c: Include verify.h.
(xnmalloc, xnrealloc): Tell the compiler that NITEMS is
nononnegative and ITEM_SIZE is positive.
* src/conf_post.h (__has_attribute_returns_nonnull)
* src/editfns.c (Fuser_full_name): Don’t assume Fuser_login_name
returns non-nil.
* src/intervals.c (rotate_right, rotate_left, update_interval):
Use TOTAL_LENGTH0 or equivalent on intervals that might be null.
* src/intervals.h (TOTAL_LENGTH): Assume arg is nonnull.
(TOTAL_LENGTH0): New macro, with the old TOTAL_LENGTH meaning.
(make_interval, split_interval_right): Add ATTRIBUTE_RETURNS_NONNULL.
* src/pdumper.c (dump_check_dump_off): Now returns void, since
no caller uses the return value.  Redo assert to pacify GCC.
(decode_emacs_reloc): Add a seemingly-random eassume to pacify GCC.
Ugly, and I suspect due to a bug in GCC.
1 job for master in 90 minutes and 2 seconds (queued for 4 seconds)
Status Job ID Name Coverage
failed #5151


Name Stage Failure
test-all Test The script exceeded the maximum execution time set for the job
  GEN      lisp/international/ccl-tests.log
ELC lisp/international/mule-tests.elc
GEN lisp/international/mule-tests.log
ELC lisp/international/mule-util-tests.elc
GEN lisp/international/mule-util-tests.log
ELC lisp/international/ucs-normalize-tests.elc
GEN lisp/international/ucs-normalize-tests.log
Pulling docker image gitlab/gitlab-runner-helper:x86_64-d0b76032 ...
ERROR: Job failed: execution took longer than 1h30m0s seconds