Re: make_ctags: use -I option to ignore pg_node_attr macro

Поиск
Список
Период
Сортировка
От Masahiko Sawada
Тема Re: make_ctags: use -I option to ignore pg_node_attr macro
Дата
Msg-id CAD21AoAfT_90Y4rpoE5mwyCKyUtsWZUocLm+Jojb5Br3GvHAkw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: make_ctags: use -I option to ignore pg_node_attr macro  (Tatsuo Ishii <ishii@sraoss.co.jp>)
Список pgsql-hackers
On Wed, Jun 14, 2023 at 11:16 AM Tatsuo Ishii <ishii@sraoss.co.jp> wrote:
>
> > Hi Sawada-san,
> >
> >> In my Mac environment where non-Exuberant ctags and emacs 28.2 are
> >> installed, the generated etags file cannot be loaded by emacs due to
> >> file format error. The generated TAGS file is:
> >>
> >> % head -10 TAGS
> >>
> >>                                     ) /
> >> sizeof(BlockNumber)sizeof(BlockNumber)117,3750
> >>                                                                 my
> >> @newa newa395,10443
> >>
> >> variadic array[1,2]:array[1,2]56,1803
> >>
> >> variadic array[]::inarray[]::i72,2331
> >>
> >> variadic array[array64,2111
> >>
> >> variadic array[array68,2222
> >>
> >> variadic array[array76,2441
> >>                                                           (2 *  (2 53,1353
> >>                                                         my $fn fn387,10147
> >>                                                         startblock 101,4876
> >>
> >> Since the etags files consist of multiple sections[1] we cannot sort
> >> the generated etags file. With the attached patch, make_etags (with
> >> non-Exuberant ctags) generates a correct format etags file and it
> >> works:
> >>
> >> % head -10 TAGS
> >>
> >> /Users/masahiko/pgsql/source/postgresql/GNUmakefile,1187
> >> subdir 7,56
> >> top_builddir 8,65
> >> docs:docs13,167
> >> world-contrib-recurse:world-contrib-recurse19,273
> >> world-bin-contrib-recurse:world-bin-contrib-recurse24,394
> >> html man:html man26,444
> >> install-docs:install-docs29,474
> >> install-world-contrib-recurse:install-world-contrib-recurse35,604
> >>
> >> BTW regarding the following comment, as far as I can read the
> >> Wikipedia page for ctags[1], Exuberant ctags file doesn't have a
> >> header section.
> >>
> >> # Exuberant tags has a header that we cannot sort in with the other entries
> >> # so we skip the sort step
> >> # Why are we sorting this?  I guess some tag implementation need this,
> >> # particularly for append mode.  bjm 2012-02-24
> >> if [ ! "$IS_EXUBERANT" ]
> >>
> >> Instead, the page says that sorting non-Exuberant tags file allows for
> >> faster searching on of the tags file. I've fixed the comment
> >> accordingly too.
> >>
> >> Regards,
> >>
> >> [1] https://en.wikipedia.org/wiki/Ctags#Etags_2
> >
> > Sorry for late reply and thanks for the patch!
> >
> > I have confirmed the error with make_etags on my Mac (emacs 28.1 +
> > non-Exuberant ctags), and the error is fixed by your patch. Also I
> > have confirmed the patch does not affect make_etags on my Linux (emacs
> > 26.3 + Exuberant ctags).
> >
> > I will push the fix to REL_15_STABLE and master branch if there's no
> > objection.
>
> Fix pushded. Thanks!

Thank you!

Regards,

--
Masahiko Sawada
Amazon Web Services: https://aws.amazon.com



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Masahiko Sawada
Дата:
Сообщение: Re: Replace (GUC_UNIT_MEMORY | GUC_UNIT_TIME) with GUC_UNIT in guc.c
Следующее
От: Amit Langote
Дата:
Сообщение: Re: Views no longer in rangeTabls?