Mercurial > vim
comparison src/regexp_nfa.c @ 20007:aadd1cae2ff5 v8.2.0559
patch 8.2.0559: clearing a struct is verbose
Commit: https://github.com/vim/vim/commit/a80faa8930ed5a554beeb2727762538873135e83
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Apr 12 19:37:17 2020 +0200
patch 8.2.0559: clearing a struct is verbose
Problem: Clearing a struct is verbose.
Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER().
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 12 Apr 2020 19:45:05 +0200 |
parents | 08f4dc2ba716 |
children | ab0dc036f586 |
comparison
equal
deleted
inserted
replaced
20006:aee3c9266968 | 20007:aadd1cae2ff5 |
---|---|
4562 sub = &subs->norm; | 4562 sub = &subs->norm; |
4563 } | 4563 } |
4564 | 4564 |
4565 // avoid compiler warnings | 4565 // avoid compiler warnings |
4566 save_ptr = NULL; | 4566 save_ptr = NULL; |
4567 vim_memset(&save_multipos, 0, sizeof(save_multipos)); | 4567 CLEAR_FIELD(save_multipos); |
4568 | 4568 |
4569 // Set the position (with "off" added) in the subexpression. Save | 4569 // Set the position (with "off" added) in the subexpression. Save |
4570 // and restore it when it was in use. Otherwise fill any gap. | 4570 // and restore it when it was in use. Otherwise fill any gap. |
4571 if (REG_MULTI) | 4571 if (REG_MULTI) |
4572 { | 4572 { |
4715 else | 4715 else |
4716 { | 4716 { |
4717 save_ptr = sub->list.line[subidx].end; | 4717 save_ptr = sub->list.line[subidx].end; |
4718 sub->list.line[subidx].end = rex.input + off; | 4718 sub->list.line[subidx].end = rex.input + off; |
4719 // avoid compiler warnings | 4719 // avoid compiler warnings |
4720 vim_memset(&save_multipos, 0, sizeof(save_multipos)); | 4720 CLEAR_FIELD(save_multipos); |
4721 } | 4721 } |
4722 | 4722 |
4723 subs = addstate(l, state->out, subs, pim, off_arg); | 4723 subs = addstate(l, state->out, subs, pim, off_arg); |
4724 if (subs == NULL) | 4724 if (subs == NULL) |
4725 break; | 4725 break; |