Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package global for openSUSE:Factory checked in at 2022-12-18 17:22:28 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/global (Old) and /work/SRC/openSUSE:Factory/.global.new.1835 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "global" Sun Dec 18 17:22:28 2022 rev:60 rq:1043583 version:6.6.9 Changes: -------- --- /work/SRC/openSUSE:Factory/global/global.changes 2022-12-07 17:37:18.217307437 +0100 +++ /work/SRC/openSUSE:Factory/.global.new.1835/global.changes 2022-12-18 17:22:32.425316301 +0100 @@ -1,0 +2,9 @@ +Sun Dec 18 08:35:24 UTC 2022 - Dirk Müller <dmuel...@suse.com> + +- update to 6.6.9: + * o gtags(C++ parser): did not recognize 'final' keyword. Now it works. + * o Fixed a couple of bugs in MinGW. + * Fixed unknown type sigset_t error in MinGW. + * Fixed pointer to integer cast warnings in MinGW. + +------------------------------------------------------------------- Old: ---- global-6.6.8.tar.gz global-6.6.8.tar.gz.sig New: ---- global-6.6.9.tar.gz global-6.6.9.tar.gz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ global.spec ++++++ --- /var/tmp/diff_new_pack.UGgFGl/_old 2022-12-18 17:22:33.065319999 +0100 +++ /var/tmp/diff_new_pack.UGgFGl/_new 2022-12-18 17:22:33.069320023 +0100 @@ -17,7 +17,7 @@ Name: global -Version: 6.6.8 +Version: 6.6.9 Release: 0 Summary: Common source code tag system License: GPL-3.0-only ++++++ global-6.6.8.tar.gz -> global-6.6.9.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/AUTHORS new/global-6.6.9/AUTHORS --- old/global-6.6.8/AUTHORS 2021-12-17 12:39:47.000000000 +0100 +++ new/global-6.6.9/AUTHORS 2022-12-11 16:38:21.000000000 +0100 @@ -8,7 +8,7 @@ Copyright holder of GNU Global ============================== -Copyright (c) 1996-2017 Tama Communications Corporation. +Copyright (c) 1996-2022 Tama Communications Corporation. All rights reserved. Contributors of GNU Global diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/ChangeLog new/global-6.6.9/ChangeLog --- old/global-6.6.8/ChangeLog 2021-12-17 12:39:47.000000000 +0100 +++ new/global-6.6.9/ChangeLog 2022-12-11 16:38:21.000000000 +0100 @@ -21,7 +21,7 @@ December 13 2021, Shigio YAMAGUHI - [plugin-factory/PLUGIN_HOWTO.reference] + [plugin-factory/PLUGIN_HOWTO.universal-ctags] [plugin-factory/uctags-scheme.c-diff] I wrote a document titled 'How to get Universal Ctags to handle references.' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/NEWS new/global-6.6.9/NEWS --- old/global-6.6.8/NEWS 2021-12-17 12:39:47.000000000 +0100 +++ new/global-6.6.9/NEWS 2022-12-11 16:38:21.000000000 +0100 @@ -19,6 +19,14 @@ GNU Global NEWS - User visible changes. At least, you should search '[INCOMPATIBLE CHANGES]' for each version. +Version 6.6.9 - December 12 2022 + +[FIXED BUGS] +o gtags(C++ parser): did not recognize 'final' keyword. Now it works. +o Fixed a couple of bugs in MinGW. +- Fixed unknown type sigset_t error in MinGW. +- Fixed pointer to integer cast warnings in MinGW. + Version 6.6.8 - December 17 2021 [CHANGES] @@ -36,7 +44,7 @@ --with-sqlite3[=dir] By default, the embedded version is used. [NEW DOCUMENT] -o plugin-factory/PLUGIN_HOWTO.reference: +o plugin-factory/PLUGIN_HOWTO.universal-ctags: Added a howto document: 'How to get Universal Ctags to handle references' [FIXED BUGS] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/THANKS new/global-6.6.9/THANKS --- old/global-6.6.8/THANKS 2021-12-17 12:39:48.000000000 +0100 +++ new/global-6.6.9/THANKS 2022-12-11 16:38:21.000000000 +0100 @@ -5,7 +5,7 @@ | ~~ | ~~| | ~ | | | ~~| for all hackers. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Copyright (c) 2000, 2001, 2002, 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2012 - 2013, 2014, 2015, 2016, 2017, 2020 + 2013, 2014, 2015, 2016, 2017, 2020, 2022 Tama Communications Corporation This file is free software; as a special exception the author gives @@ -35,10 +35,11 @@ Arne Schmitz bug report about gtags-parser. Alain Kalker patch for global.cgi.tmpl.in to support python's built-in web server. Alex Ott profitable information about LFS(Large file support). +Alex Pelts bug fix patch for c++ parser (did not recognize final keyword). Alexander Gusak bug report about c++ parser's segmentation violation. Bakken, Luke bug fix method about stat() in htags(1). Bert Gijsbers investigation about mandoc macro and a bug report. -Biswapriyo Nath patch for windows32 platform. +Biswapriyo Nath bug fix patch for Windows platform (MinGW). Bob Bentley bug report about bless.sh and gtags. Brian Carlstrom bug fix patch for gtags. Bvk chaitanya bug report about global (it cannot find gtags). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/configure new/global-6.6.9/configure --- old/global-6.6.8/configure 2021-12-17 12:40:01.000000000 +0100 +++ new/global-6.6.9/configure 2022-12-11 16:38:35.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for GNU GLOBAL 6.6.8. +# Generated by GNU Autoconf 2.69 for GNU GLOBAL 6.6.9. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -589,8 +589,8 @@ # Identity of this package. PACKAGE_NAME='GNU GLOBAL' PACKAGE_TARNAME='global' -PACKAGE_VERSION='6.6.8' -PACKAGE_STRING='GNU GLOBAL 6.6.8' +PACKAGE_VERSION='6.6.9' +PACKAGE_STRING='GNU GLOBAL 6.6.9' PACKAGE_BUGREPORT='' PACKAGE_URL='http://www.gnu.org/software/global/' @@ -1392,7 +1392,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures GNU GLOBAL 6.6.8 to adapt to many kinds of systems. +\`configure' configures GNU GLOBAL 6.6.9 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1462,7 +1462,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of GNU GLOBAL 6.6.8:";; + short | recursive ) echo "Configuration of GNU GLOBAL 6.6.9:";; esac cat <<\_ACEOF @@ -1596,7 +1596,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -GNU GLOBAL configure 6.6.8 +GNU GLOBAL configure 6.6.9 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2301,7 +2301,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by GNU GLOBAL $as_me 6.6.8, which was +It was created by GNU GLOBAL $as_me 6.6.9, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2653,7 +2653,7 @@ -$as_echo "#define COPYRIGHT_YEAR \"1996-2021\"" >>confdefs.h +$as_echo "#define COPYRIGHT_YEAR \"1996-2022\"" >>confdefs.h ac_config_headers="$ac_config_headers config.h:config-h.in" @@ -3169,7 +3169,7 @@ # Define the identity of the package. PACKAGE='global' - VERSION='6.6.8' + VERSION='6.6.9' cat >>confdefs.h <<_ACEOF @@ -14280,7 +14280,7 @@ /* end confdefs.h. */ #include <stdlib.h> -main(){ (void)realpath("/./tmp", (void *)0); return 0; } +int main(){ (void)realpath("/./tmp", (void *)0); return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : @@ -17167,7 +17167,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by GNU GLOBAL $as_me 6.6.8, which was +This file was extended by GNU GLOBAL $as_me 6.6.9, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -17235,7 +17235,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -GNU GLOBAL config.status 6.6.8 +GNU GLOBAL config.status 6.6.9 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/configure.ac new/global-6.6.9/configure.ac --- old/global-6.6.8/configure.ac 2021-12-17 12:39:47.000000000 +0100 +++ new/global-6.6.9/configure.ac 2022-12-11 16:38:21.000000000 +0100 @@ -21,8 +21,8 @@ dnl You should have received a copy of the GNU General Public License dnl along with this program. If not, see <http://www.gnu.org/licenses/>. dnl -AC_INIT([GNU GLOBAL],[6.6.8]) -AC_DEFINE(COPYRIGHT_YEAR,["1996-2021"],[Copyright Year]) +AC_INIT([GNU GLOBAL],[6.6.9]) +AC_DEFINE(COPYRIGHT_YEAR,["1996-2022"],[Copyright Year]) AC_CONFIG_SRCDIR(global/global.c) AC_CONFIG_HEADERS([config.h:config-h.in]) AC_PREREQ(2.59) @@ -75,7 +75,7 @@ AC_CACHE_VAL(ac_cv_posix1_2008_realpath, [AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> -main(){ (void)realpath("/./tmp", (void *)0); return 0; } +int main(){ (void)realpath("/./tmp", (void *)0); return 0; } ]])],[ac_cv_posix1_2008_realpath=yes], [ac_cv_posix1_2008_realpath=no])]) AC_MSG_RESULT($ac_cv_posix1_2008_realpath) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/doc/global.info new/global-6.6.9/doc/global.info --- old/global-6.6.8/doc/global.info 2021-12-17 12:41:12.000000000 +0100 +++ new/global-6.6.9/doc/global.info 2022-12-11 16:39:45.000000000 +0100 @@ -23,7 +23,7 @@ GNU Global source code tagging system ************************************* -This manual documents version 6.6.8 of the GNU Global source code +This manual documents version 6.6.9 of the GNU Global source code tagging system. * Menu: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/doc/stamp-vti new/global-6.6.9/doc/stamp-vti --- old/global-6.6.8/doc/stamp-vti 2021-12-17 12:41:10.000000000 +0100 +++ new/global-6.6.9/doc/stamp-vti 2022-12-11 16:39:43.000000000 +0100 @@ -1,4 +1,4 @@ -@set UPDATED 17 December 2021 -@set UPDATED-MONTH December 2021 -@set EDITION 6.6.8 -@set VERSION 6.6.8 +@set UPDATED 11 December 2022 +@set UPDATED-MONTH December 2022 +@set EDITION 6.6.9 +@set VERSION 6.6.9 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/doc/version.texi new/global-6.6.9/doc/version.texi --- old/global-6.6.8/doc/version.texi 2021-12-17 12:41:10.000000000 +0100 +++ new/global-6.6.9/doc/version.texi 2022-12-11 16:39:43.000000000 +0100 @@ -1,4 +1,4 @@ -@set UPDATED 17 December 2021 -@set UPDATED-MONTH December 2021 -@set EDITION 6.6.8 -@set VERSION 6.6.8 +@set UPDATED 11 December 2022 +@set UPDATED-MONTH December 2022 +@set EDITION 6.6.9 +@set VERSION 6.6.9 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/libparser/Cpp.c new/global-6.6.9/libparser/Cpp.c --- old/global-6.6.8/libparser/Cpp.c 2021-12-17 12:39:47.000000000 +0100 +++ new/global-6.6.9/libparser/Cpp.c 2022-12-11 16:38:21.000000000 +0100 @@ -243,6 +243,8 @@ } } c = nexttoken(NULL, cpp_reserved_word); + } else if (c == CPP_FINAL) { + c = nexttoken(NULL, cpp_reserved_word); } } while (c == SYMBOL || c == '\n'); if (c == ':' || c == '{') /* } */ { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/libparser/cpp_res.gpf new/global-6.6.9/libparser/cpp_res.gpf --- old/global-6.6.8/libparser/cpp_res.gpf 2021-12-17 12:39:48.000000000 +0100 +++ new/global-6.6.9/libparser/cpp_res.gpf 2022-12-11 16:38:21.000000000 +0100 @@ -39,44 +39,45 @@ #define CPP_EXPORT 2028 #define CPP_EXTERN 2029 #define CPP_FALSE 2030 -#define CPP_FLOAT 2031 -#define CPP_FOR 2032 -#define CPP_FRIEND 2033 -#define CPP_GOTO 2034 -#define CPP_IF 2035 -#define CPP_INT 2036 -#define CPP_LONG 2037 -#define CPP_MUTABLE 2038 -#define CPP_NAMESPACE 2039 -#define CPP_NEW 2040 -#define CPP_OPERATOR 2041 -#define CPP_PRIVATE 2042 -#define CPP_PROTECTED 2043 -#define CPP_PUBLIC 2044 -#define CPP_REGISTER 2045 -#define CPP_REINTERPRET_CAST 2046 -#define CPP_RETURN 2047 -#define CPP_SHORT 2048 -#define CPP_SIZEOF 2049 -#define CPP_STATIC 2050 -#define CPP_STATIC_CAST 2051 -#define CPP_STRUCT 2052 -#define CPP_SWITCH 2053 -#define CPP_TEMPLATE 2054 -#define CPP_THIS 2055 -#define CPP_THROW 2056 -#define CPP_TRUE 2057 -#define CPP_TRY 2058 -#define CPP_TYPEDEF 2059 -#define CPP_TYPENAME 2060 -#define CPP_TYPEID 2061 -#define CPP_UNION 2062 -#define CPP_UNSIGNED 2063 -#define CPP_USING 2064 -#define CPP_VIRTUAL 2065 -#define CPP_VOID 2066 -#define CPP_WCHAR_T 2067 -#define CPP_WHILE 2068 +#define CPP_FINAL 2031 +#define CPP_FLOAT 2032 +#define CPP_FOR 2033 +#define CPP_FRIEND 2034 +#define CPP_GOTO 2035 +#define CPP_IF 2036 +#define CPP_INT 2037 +#define CPP_LONG 2038 +#define CPP_MUTABLE 2039 +#define CPP_NAMESPACE 2040 +#define CPP_NEW 2041 +#define CPP_OPERATOR 2042 +#define CPP_PRIVATE 2043 +#define CPP_PROTECTED 2044 +#define CPP_PUBLIC 2045 +#define CPP_REGISTER 2046 +#define CPP_REINTERPRET_CAST 2047 +#define CPP_RETURN 2048 +#define CPP_SHORT 2049 +#define CPP_SIZEOF 2050 +#define CPP_STATIC 2051 +#define CPP_STATIC_CAST 2052 +#define CPP_STRUCT 2053 +#define CPP_SWITCH 2054 +#define CPP_TEMPLATE 2055 +#define CPP_THIS 2056 +#define CPP_THROW 2057 +#define CPP_TRUE 2058 +#define CPP_TRY 2059 +#define CPP_TYPEDEF 2060 +#define CPP_TYPENAME 2061 +#define CPP_TYPEID 2062 +#define CPP_UNION 2063 +#define CPP_UNSIGNED 2064 +#define CPP_USING 2065 +#define CPP_VIRTUAL 2066 +#define CPP_VOID 2067 +#define CPP_WCHAR_T 2068 +#define CPP_WHILE 2069 #define SHARP_SHARP 3001 #define SHARP_ASSERT 3002 #define SHARP_DEFINE 3003 @@ -141,6 +142,7 @@ export, CPP_EXPORT extern, CPP_EXTERN false, CPP_FALSE +final, CPP_FINAL float, CPP_FLOAT for, CPP_FOR friend, CPP_FRIEND diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/libparser/cpp_res.h new/global-6.6.9/libparser/cpp_res.h --- old/global-6.6.8/libparser/cpp_res.h 2021-12-17 12:39:48.000000000 +0100 +++ new/global-6.6.9/libparser/cpp_res.h 2022-12-11 16:38:21.000000000 +0100 @@ -70,44 +70,45 @@ #define CPP_EXPORT 2028 #define CPP_EXTERN 2029 #define CPP_FALSE 2030 -#define CPP_FLOAT 2031 -#define CPP_FOR 2032 -#define CPP_FRIEND 2033 -#define CPP_GOTO 2034 -#define CPP_IF 2035 -#define CPP_INT 2036 -#define CPP_LONG 2037 -#define CPP_MUTABLE 2038 -#define CPP_NAMESPACE 2039 -#define CPP_NEW 2040 -#define CPP_OPERATOR 2041 -#define CPP_PRIVATE 2042 -#define CPP_PROTECTED 2043 -#define CPP_PUBLIC 2044 -#define CPP_REGISTER 2045 -#define CPP_REINTERPRET_CAST 2046 -#define CPP_RETURN 2047 -#define CPP_SHORT 2048 -#define CPP_SIZEOF 2049 -#define CPP_STATIC 2050 -#define CPP_STATIC_CAST 2051 -#define CPP_STRUCT 2052 -#define CPP_SWITCH 2053 -#define CPP_TEMPLATE 2054 -#define CPP_THIS 2055 -#define CPP_THROW 2056 -#define CPP_TRUE 2057 -#define CPP_TRY 2058 -#define CPP_TYPEDEF 2059 -#define CPP_TYPENAME 2060 -#define CPP_TYPEID 2061 -#define CPP_UNION 2062 -#define CPP_UNSIGNED 2063 -#define CPP_USING 2064 -#define CPP_VIRTUAL 2065 -#define CPP_VOID 2066 -#define CPP_WCHAR_T 2067 -#define CPP_WHILE 2068 +#define CPP_FINAL 2031 +#define CPP_FLOAT 2032 +#define CPP_FOR 2033 +#define CPP_FRIEND 2034 +#define CPP_GOTO 2035 +#define CPP_IF 2036 +#define CPP_INT 2037 +#define CPP_LONG 2038 +#define CPP_MUTABLE 2039 +#define CPP_NAMESPACE 2040 +#define CPP_NEW 2041 +#define CPP_OPERATOR 2042 +#define CPP_PRIVATE 2043 +#define CPP_PROTECTED 2044 +#define CPP_PUBLIC 2045 +#define CPP_REGISTER 2046 +#define CPP_REINTERPRET_CAST 2047 +#define CPP_RETURN 2048 +#define CPP_SHORT 2049 +#define CPP_SIZEOF 2050 +#define CPP_STATIC 2051 +#define CPP_STATIC_CAST 2052 +#define CPP_STRUCT 2053 +#define CPP_SWITCH 2054 +#define CPP_TEMPLATE 2055 +#define CPP_THIS 2056 +#define CPP_THROW 2057 +#define CPP_TRUE 2058 +#define CPP_TRY 2059 +#define CPP_TYPEDEF 2060 +#define CPP_TYPENAME 2061 +#define CPP_TYPEID 2062 +#define CPP_UNION 2063 +#define CPP_UNSIGNED 2064 +#define CPP_USING 2065 +#define CPP_VIRTUAL 2066 +#define CPP_VOID 2067 +#define CPP_WCHAR_T 2068 +#define CPP_WHILE 2069 #define SHARP_SHARP 3001 #define SHARP_ASSERT 3002 #define SHARP_DEFINE 3003 @@ -130,12 +131,12 @@ #define SHARP_WARNING 3020 struct keyword { char *name; int token; }; -#define TOTAL_KEYWORDS 99 +#define TOTAL_KEYWORDS 100 #define MIN_WORD_LENGTH 2 #define MAX_WORD_LENGTH 16 #define MIN_HASH_VALUE 2 -#define MAX_HASH_VALUE 242 -/* maximum key range = 241, duplicates = 0 */ +#define MAX_HASH_VALUE 227 +/* maximum key range = 226, duplicates = 0 */ #ifdef __GNUC__ __inline @@ -149,32 +150,32 @@ { static unsigned char asso_values[] = { - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 10, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 0, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 45, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 5, 243, 10, 15, 35, - 45, 25, 95, 70, 35, 15, 65, 243, 70, 20, - 0, 5, 60, 15, 5, 0, 0, 10, 90, 80, - 20, 80, 30, 40, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243 + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 10, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 0, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 45, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 5, 228, 10, 15, 80, + 40, 25, 90, 80, 80, 15, 70, 228, 25, 25, + 0, 5, 55, 15, 5, 0, 0, 10, 100, 110, + 15, 20, 30, 40, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228 }; register unsigned int hval = len; @@ -228,117 +229,120 @@ {""}, {"__attribute__", CPP___ATTRIBUTE__}, {"#unassert", SHARP_UNASSERT}, - {"false", CPP_FALSE}, + {"final", CPP_FINAL}, {"#error", SHARP_ERROR}, {"mutable", CPP_MUTABLE}, {"try", CPP_TRY}, {"case", CPP_CASE}, - {""}, - {"inline", CPP_INLINE}, - {""}, - {"volatile", CPP_VOLATILE}, - {"namespace", CPP_NAMESPACE}, - {"throw", CPP_THROW}, + {"false", CPP_FALSE}, {"export", CPP_EXPORT}, {""}, {"new", CPP_NEW}, - {""}, - {"#else", SHARP_ELSE}, + {"namespace", CPP_NAMESPACE}, + {"class", CPP_CLASS}, + {"inline", CPP_INLINE}, + {"dynamic_cast", CPP_DYNAMIC_CAST}, + {"volatile", CPP_VOLATILE}, + {""}, {""}, {"return", CPP_RETURN}, {""}, {"__P", CPP___P}, - {""}, {""}, - {"signed", CPP_SIGNED}, - {""}, - {"__thread", CPP___THREAD}, - {"char", CPP_CHAR}, - {"catch", CPP_CATCH}, + {"else", CPP_ELSE}, + {"#else", SHARP_ELSE}, {"extern", CPP_EXTERN}, {"__const", CPP_CONST}, - {"#include", SHARP_INCLUDE}, + {""}, {"__const__", CPP_CONST}, - {"#elif", SHARP_ELIF}, + {""}, {"#undef", SHARP_UNDEF}, - {"wchar_t", CPP_WCHAR_T}, - {"#include_next", SHARP_INCLUDE_NEXT}, {""}, - {"using", CPP_USING}, - {"#ident", SHARP_IDENT}, + {"explicit", CPP_EXPLICIT}, {""}, {""}, + {"typeid", CPP_TYPEID}, + {"typedef", CPP_TYPEDEF}, + {"typename", CPP_TYPENAME}, {"protected", CPP_PROTECTED}, + {"#elif", SHARP_ELIF}, + {"#ident", SHARP_IDENT}, + {"#pragma", SHARP_PRAGMA}, + {""}, {""}, + {"using", CPP_USING}, + {"#endif", SHARP_ENDIF}, + {"#import", SHARP_IMPORT}, + {""}, {""}, {"union", CPP_UNION}, {"delete", CPP_DELETE}, - {"#pragma", SHARP_PRAGMA}, + {""}, {"__inline", CPP_INLINE}, {""}, {"__inline__", CPP_INLINE}, - {"#endif", SHARP_ENDIF}, - {"#import", SHARP_IMPORT}, - {"register", CPP_REGISTER}, - {"long", CPP_LONG}, - {"#sccs", SHARP_SCCS}, {"sizeof", CPP_SIZEOF}, {""}, - {"#if", SHARP_IF}, - {""}, - {"class", CPP_CLASS}, - {""}, - {"#ifndef", SHARP_IFNDEF}, {"template", CPP_TEMPLATE}, - {""}, {""}, {""}, + {"bool", CPP_BOOL}, + {"throw", CPP_THROW}, + {""}, {"if", CPP_IF}, {""}, - {"else", CPP_ELSE}, - {"__volatile", CPP_VOLATILE}, + {"long", CPP_LONG}, + {"float", CPP_FLOAT}, + {""}, {""}, + {"#if", SHARP_IF}, + {""}, + {"#line", SHARP_LINE}, + {"signed", CPP_SIGNED}, + {"#ifndef", SHARP_IFNDEF}, + {"__thread", CPP___THREAD}, + {"char", CPP_CHAR}, + {"catch", CPP_CATCH}, {"friend", CPP_FRIEND}, - {"__volatile__", CPP_VOLATILE}, {""}, - {"this", CPP_THIS}, - {"short", CPP_SHORT}, - {"reinterpret_cast", CPP_REINTERPRET_CAST}, - {"dynamic_cast", CPP_DYNAMIC_CAST}, - {"#warning", SHARP_WARNING}, - {""}, {""}, {""}, - {"default", CPP_DEFAULT}, - {"explicit", CPP_EXPLICIT}, - {"enum", CPP_ENUM}, + {"#include", SHARP_INCLUDE}, + {""}, {"break", CPP_BREAK}, - {"double", CPP_DOUBLE}, - {""}, {""}, + {"reinterpret_cast", CPP_REINTERPRET_CAST}, + {"wchar_t", CPP_WCHAR_T}, + {"#include_next", SHARP_INCLUDE_NEXT}, + {""}, {""}, {""}, {""}, {""}, {"void", CPP_VOID}, {""}, {"public", CPP_PUBLIC}, - {""}, {""}, - {"true", CPP_TRUE}, - {""}, - {"typeid", CPP_TYPEID}, - {"typedef", CPP_TYPEDEF}, - {"typename", CPP_TYPENAME}, - {""}, {""}, {""}, {""}, + {"default", CPP_DEFAULT}, {"__extension__", CPP___EXTENSION__}, + {""}, + {"#sccs", SHARP_SCCS}, + {"double", CPP_DOUBLE}, + {""}, + {"register", CPP_REGISTER}, + {"enum", CPP_ENUM}, + {"__volatile", CPP_VOLATILE}, + {""}, + {"__volatile__", CPP_VOLATILE}, + {""}, + {"true", CPP_TRUE}, + {""}, {""}, {""}, + {"#warning", SHARP_WARNING}, {""}, {""}, {"#ifdef", SHARP_IFDEF}, - {""}, {""}, - {"bool", CPP_BOOL}, - {"#line", SHARP_LINE}, - {""}, {""}, {""}, {""}, - {"float", CPP_FLOAT}, - {""}, {""}, {""}, {""}, {""}, - {"switch", CPP_SWITCH}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, - {"private", CPP_PRIVATE}, + {""}, {""}, {""}, + {"short", CPP_SHORT}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {"this", CPP_THIS}, + {""}, {""}, {""}, {"operator", CPP_OPERATOR}, - {""}, {""}, {""}, {""}, {""}, {""}, - {"while", CPP_WHILE}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, + {"while", CPP_WHILE}, + {""}, + {"private", CPP_PRIVATE}, + {""}, {""}, {""}, + {"switch", CPP_SWITCH}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {"#define", SHARP_DEFINE} }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/libparser/cpp_res.in new/global-6.6.9/libparser/cpp_res.in --- old/global-6.6.8/libparser/cpp_res.in 2021-12-17 12:39:47.000000000 +0100 +++ new/global-6.6.9/libparser/cpp_res.in 2022-12-11 16:38:21.000000000 +0100 @@ -43,6 +43,7 @@ export word extern word false word +final word float word for word friend word diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/plugin-factory/Makefile.am new/global-6.6.9/plugin-factory/Makefile.am --- old/global-6.6.8/plugin-factory/Makefile.am 2021-12-17 12:39:47.000000000 +0100 +++ new/global-6.6.9/plugin-factory/Makefile.am 2022-12-11 16:38:21.000000000 +0100 @@ -34,7 +34,7 @@ user_custom_la_LDFLAGS = -module -avoid-version -no-undefined gtagsdir = ${datadir}/gtags -gtags_DATA = PLUGIN_HOWTO PLUGIN_HOWTO.pygments PLUGIN_HOWTO.reference \ +gtags_DATA = PLUGIN_HOWTO PLUGIN_HOWTO.pygments PLUGIN_HOWTO.universal-ctags \ uctags-scheme.c-diff scriptdir = ${datadir}/gtags/script diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/plugin-factory/Makefile.in new/global-6.6.9/plugin-factory/Makefile.in --- old/global-6.6.8/plugin-factory/Makefile.in 2021-12-17 12:40:04.000000000 +0100 +++ new/global-6.6.9/plugin-factory/Makefile.in 2022-12-11 16:38:39.000000000 +0100 @@ -427,7 +427,7 @@ user_custom_la_SOURCES = user-custom.c user_custom_la_LDFLAGS = -module -avoid-version -no-undefined gtagsdir = ${datadir}/gtags -gtags_DATA = PLUGIN_HOWTO PLUGIN_HOWTO.pygments PLUGIN_HOWTO.reference \ +gtags_DATA = PLUGIN_HOWTO PLUGIN_HOWTO.pygments PLUGIN_HOWTO.universal-ctags \ uctags-scheme.c-diff scriptdir = ${datadir}/gtags/script diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/plugin-factory/PLUGIN_HOWTO.reference new/global-6.6.9/plugin-factory/PLUGIN_HOWTO.reference --- old/global-6.6.8/plugin-factory/PLUGIN_HOWTO.reference 2021-12-17 12:39:47.000000000 +0100 +++ new/global-6.6.9/plugin-factory/PLUGIN_HOWTO.reference 1970-01-01 01:00:00.000000000 +0100 @@ -1,94 +0,0 @@ -___________________________________ -| | | | | _ | | | -| |___| | | | | _| | | | GNU GLOBAL source code tag system -| | | | | | | | | | -| ~~ | ~~| | ~ | | | ~~| for all hackers. -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Copyright (c) 2021 Tama Communications Corporation - - This file is free software; as a special exception the author gives - unlimited permission to copy and/or distribute it, with or without - modifications, as long as this notice is preserved. - - This program is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY, to the extent permitted by law; without even the - implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - - ---------------------------------- - -How to get Universal Ctags to handle references. - -Traditionally ctags collects definitions. In addition Universal Ctags (*1) -supports reference tags. However, the current parsers don't yet use this feature. - - *1 [https://github.com/universal-ctags/ctags] - -This little description is a guide for writing parsers for Universal Ctags -to handle references. It is of course also available from GNU Global. -I selected Scheme parser as an example, since it is very simple. - -1. When using the current parser - -Suppose you have a source file of Scheme language that looks like this: - -[a.scm] -+-------------------------------------------------------------- -|(define a 'aaa') -|(set! a 'bbb') -|(set! b 'bbb') - -You can treat Scheme source code by using Universal Ctags plugin parser. -Global(1) will show the following output. - -$ gtags -$ global -x a -a 1 a.scm (define a 'aaa') -a 2 a.scm (set! a 'bbb') -$ global -x a -r -$ global -x a -s -$ global -x b -b 3 a.scm (set! b 'bbb') -$ global -x b -r -$ global -x b -s - - -2. Changing the parser to treat references - -There is no problem in the above example. But for now, let's change the parser -to treat '(set! a ...)' as a reference for 'a' (*2). - - *2 I'm not claiming that '(set! a ...)' should be considered a reference. - It is just an example. - -I made a patch 'uctags-scheme.c-diff' for 'parsers/scheme.c'. Please apply -this patch to Universal Ctags like this: - - (In the root directory of Universal Ctags) - $ patch parsers/scheme.c /usr/local/share/gtags/uctags-scheme.c-diff - -Using the patched Universal Ctags, you will see the following output. - -$ gtags -$ global -x a -a 1 a.scm (define a 'aaa') <- as a definition -$ global -x a -r -a 2 a.scm (set! a 'bbb') <- as a reference -$ global -x a -s -$ global -x b -$ global -x b -r -$ global -x b -s -b 3 a.scm (set! b 'bbb') <- as an other symbol - -You can handle references in any language in the same way. -Basically, Global works fine if you follow the algorithm below: - -foreach (symbols as symbol) { - if (symbol is a reverved word) - continue; - else if (symbol is a definition) - call makeSimpleTag(); - else - call makeSimpleRefTag(); -} - -For details, please refer to the manual of Universal Ctags. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/global-6.6.8/plugin-factory/PLUGIN_HOWTO.universal-ctags new/global-6.6.9/plugin-factory/PLUGIN_HOWTO.universal-ctags --- old/global-6.6.8/plugin-factory/PLUGIN_HOWTO.universal-ctags 1970-01-01 01:00:00.000000000 +0100 +++ new/global-6.6.9/plugin-factory/PLUGIN_HOWTO.universal-ctags 2022-12-11 16:38:21.000000000 +0100 @@ -0,0 +1,94 @@ +___________________________________ +| | | | | _ | | | +| |___| | | | | _| | | | GNU GLOBAL source code tag system +| | | | | | | | | | +| ~~ | ~~| | ~ | | | ~~| for all hackers. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Copyright (c) 2021 Tama Communications Corporation + + This file is free software; as a special exception the author gives + unlimited permission to copy and/or distribute it, with or without + modifications, as long as this notice is preserved. + + This program is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY, to the extent permitted by law; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + ---------------------------------- + +How to get Universal Ctags to handle references. + +Traditionally ctags collects definitions. In addition Universal Ctags (*1) +supports reference tags. However, the current parsers don't yet use this feature. + + *1 [https://github.com/universal-ctags/ctags] + +This little description is a guide for writing parsers for Universal Ctags +to handle references. It is of course also available from GNU Global. +I selected Scheme parser as an example, since it is very simple. + +1. When using the current parser + +Suppose you have a source file of Scheme language that looks like this: + +[a.scm] ++-------------------------------------------------------------- +|(define a 'aaa') +|(set! a 'bbb') +|(set! b 'bbb') + +You can treat Scheme source code by using Universal Ctags plugin parser. +Global(1) will show the following output. + +$ gtags +$ global -x a +a 1 a.scm (define a 'aaa') +a 2 a.scm (set! a 'bbb') +$ global -x a -r +$ global -x a -s +$ global -x b +b 3 a.scm (set! b 'bbb') +$ global -x b -r +$ global -x b -s + + +2. Changing the parser to treat references + +There is no problem in the above example. But for now, let's change the parser +to treat '(set! a ...)' as a reference for 'a' (*2). + + *2 I'm not claiming that '(set! a ...)' should be considered a reference. + It is just an example. + +I made a patch 'uctags-scheme.c-diff' for 'parsers/scheme.c'. Please apply +this patch to Universal Ctags like this: + + (In the root directory of Universal Ctags) + $ patch parsers/scheme.c /usr/local/share/gtags/uctags-scheme.c-diff + +Using the patched Universal Ctags, you will see the following output. + +$ gtags +$ global -x a +a 1 a.scm (define a 'aaa') <- as a definition +$ global -x a -r +a 2 a.scm (set! a 'bbb') <- as a reference +$ global -x a -s +$ global -x b +$ global -x b -r +$ global -x b -s +b 3 a.scm (set! b 'bbb') <- as an other symbol + +You can handle references in any language in the same way. +Basically, Global works fine if you follow the algorithm below: + +foreach (symbols as symbol) { + if (symbol is a reverved word) + continue; + else if (symbol is a definition) + call makeSimpleTag(); + else + call makeSimpleRefTag(); +} + +For details, please refer to the manual of Universal Ctags.