[geany/geany] 8037fa: Import all test cases from upstream CTags that work for us

Colomban Wendling git-noreply at xxxxx
Sun Jun 23 13:13:13 UTC 2013


Branch:      refs/heads/ctags-tests
Author:      Colomban Wendling <ban at herbesfolles.org>
Committer:   Colomban Wendling <ban at herbesfolles.org>
Date:        Sun, 23 Jun 2013 13:13:13 UTC
Commit:      8037fa5d10c83d85946ec90c009148a9262f3a71
             https://github.com/geany/geany/commit/8037fa5d10c83d85946ec90c009148a9262f3a71

Log Message:
-----------
Import all test cases from upstream CTags that work for us

The test results were auto-generated and not manually checked, so they
may be inaccurate.  They should be fixed if appropriate if they start
to fail, e.g. when modifying the relevant parser.

CTags' tests that didn't pass weren't imported, but probably should be
added an the relevant parser fixed.


Modified Paths:
--------------
    tests/ctags/1795612.js
    tests/ctags/1795612.js.tags
    tests/ctags/1850914.js
    tests/ctags/1850914.js.tags
    tests/ctags/1878155.js
    tests/ctags/1878155.js.tags
    tests/ctags/1880687.js
    tests/ctags/1880687.js.tags
    tests/ctags/2023624.js
    tests/ctags/2023624.js.tags
    tests/ctags/3184782.sql
    tests/ctags/3184782.sql.tags
    tests/ctags/3470609.js
    tests/ctags/3470609.js.tags
    tests/ctags/3526726.tex
    tests/ctags/3526726.tex.tags
    tests/ctags/68hc11.asm
    tests/ctags/68hc11.asm.tags
    tests/ctags/Makefile.am
    tests/ctags/Package.pm
    tests/ctags/Package.pm.tags
    tests/ctags/angle_bracket.cpp
    tests/ctags/angle_bracket.cpp.tags
    tests/ctags/array-spec.f90
    tests/ctags/array-spec.f90.tags
    tests/ctags/array_ref_and_out.cs
    tests/ctags/array_ref_and_out.cs.tags
    tests/ctags/array_spec.f90
    tests/ctags/array_spec.f90.tags
    tests/ctags/attributes.cs
    tests/ctags/attributes.cs.tags
    tests/ctags/auto.f
    tests/ctags/auto.f.tags
    tests/ctags/bit_field.c
    tests/ctags/bit_field.c.tags
    tests/ctags/bracematch.js
    tests/ctags/bracematch.js.tags
    tests/ctags/bug1020715.c
    tests/ctags/bug1020715.c.tags
    tests/ctags/bug1020715.cpp
    tests/ctags/bug1020715.cpp.tags
    tests/ctags/bug1086609.c
    tests/ctags/bug1086609.c.tags
    tests/ctags/bug1093123.cpp
    tests/ctags/bug1093123.cpp.tags
    tests/ctags/bug1111214-j-chan.v
    tests/ctags/bug1111214-j-chan.v.tags
    tests/ctags/bug1111214.v
    tests/ctags/bug1111214.v.tags
    tests/ctags/bug1201689.c
    tests/ctags/bug1201689.c.tags
    tests/ctags/bug1447756.java
    tests/ctags/bug1447756.java.tags
    tests/ctags/bug1458930.c
    tests/ctags/bug1458930.c.tags
    tests/ctags/bug1466117.c
    tests/ctags/bug1466117.c.tags
    tests/ctags/bug1491666.c
    tests/ctags/bug1491666.c.tags
    tests/ctags/bug1515910.cs
    tests/ctags/bug1515910.cs.tags
    tests/ctags/bug1548443.cpp
    tests/ctags/bug1548443.cpp.tags
    tests/ctags/bug1563476.cpp
    tests/ctags/bug1563476.cpp.tags
    tests/ctags/bug1570779.sql
    tests/ctags/bug1570779.sql.tags
    tests/ctags/bug1575055.cpp
    tests/ctags/bug1575055.cpp.tags
    tests/ctags/bug1585745.cpp
    tests/ctags/bug1585745.cpp.tags
    tests/ctags/bug1611054.cs
    tests/ctags/bug1611054.cs.tags
    tests/ctags/bug1691412.java
    tests/ctags/bug1691412.java.tags
    tests/ctags/bug1742588.rb
    tests/ctags/bug1742588.rb.tags
    tests/ctags/bug1743330.v
    tests/ctags/bug1743330.v.tags
    tests/ctags/bug1764143.h
    tests/ctags/bug1764143.h.tags
    tests/ctags/bug1764148.py
    tests/ctags/bug1764148.py.tags
    tests/ctags/bug1770479.cpp
    tests/ctags/bug1770479.cpp.tags
    tests/ctags/bug1773926.cpp
    tests/ctags/bug1773926.cpp.tags
    tests/ctags/bug1777344.java
    tests/ctags/bug1777344.java.tags
    tests/ctags/bug1799340.cpp
    tests/ctags/bug1799340.cpp.tags
    tests/ctags/bug1799343-1.cpp
    tests/ctags/bug1799343-1.cpp.tags
    tests/ctags/bug1799343-2.cpp
    tests/ctags/bug1799343-2.cpp.tags
    tests/ctags/bug1800065.cs
    tests/ctags/bug1800065.cs.tags
    tests/ctags/bug1809024.py
    tests/ctags/bug1809024.py.tags
    tests/ctags/bug1830343.cs
    tests/ctags/bug1830343.cs.tags
    tests/ctags/bug1830344.cs
    tests/ctags/bug1830344.cs.tags
    tests/ctags/bug1856363.py
    tests/ctags/bug1856363.py.tags
    tests/ctags/bug1906062.py
    tests/ctags/bug1906062.py.tags
    tests/ctags/bug1907083.cpp
    tests/ctags/bug1907083.cpp.tags
    tests/ctags/bug1924919.cpp
    tests/ctags/bug1924919.cpp.tags
    tests/ctags/bug1938565.sql
    tests/ctags/bug1938565.sql.tags
    tests/ctags/bug1944150.sql
    tests/ctags/bug1944150.sql.tags
    tests/ctags/bug1950327.js
    tests/ctags/bug1950327.js.tags
    tests/ctags/bug1988026.py
    tests/ctags/bug1988026.py.tags
    tests/ctags/bug1988027.py
    tests/ctags/bug1988027.py.tags
    tests/ctags/bug1988130.py
    tests/ctags/bug1988130.py.tags
    tests/ctags/bug2049723.java
    tests/ctags/bug2049723.java.tags
    tests/ctags/bug2075402.py
    tests/ctags/bug2075402.py.tags
    tests/ctags/bug2117073.java
    tests/ctags/bug2117073.java.tags
    tests/ctags/bug2374109.vhd
    tests/ctags/bug2374109.vhd.tags
    tests/ctags/bug2411878.cs
    tests/ctags/bug2411878.cs.tags
    tests/ctags/bug2747828.v
    tests/ctags/bug2747828.v.tags
    tests/ctags/bug2777310.js
    tests/ctags/bug2777310.js.tags
    tests/ctags/bug2781264.rb
    tests/ctags/bug2781264.rb.tags
    tests/ctags/bug2886870.tex
    tests/ctags/bug2886870.tex.tags
    tests/ctags/bug2888482.js
    tests/ctags/bug2888482.js.tags
    tests/ctags/bug3036476.js
    tests/ctags/bug3036476.js.tags
    tests/ctags/bug3168705.py
    tests/ctags/bug3168705.py.tags
    tests/ctags/bug3571233.js
    tests/ctags/bug3571233.js.tags
    tests/ctags/bug507864.c
    tests/ctags/bug507864.c.tags
    tests/ctags/bug538629.asm
    tests/ctags/bug538629.asm.tags
    tests/ctags/bug556645.c
    tests/ctags/bug556645.c.tags
    tests/ctags/bug556646.c
    tests/ctags/bug556646.c.tags
    tests/ctags/bug565813.f90
    tests/ctags/bug565813.f90.tags
    tests/ctags/bug612019.pas
    tests/ctags/bug612019.pas.tags
    tests/ctags/bug612621.pl
    tests/ctags/bug612621.pl.tags
    tests/ctags/bug620288.f
    tests/ctags/bug620288.f.tags
    tests/ctags/bug639639.h
    tests/ctags/bug639639.h.tags
    tests/ctags/bug639644.hpp
    tests/ctags/bug639644.hpp.tags
    tests/ctags/bug665086.cpp
    tests/ctags/bug665086.cpp.tags
    tests/ctags/bug670433.f90
    tests/ctags/bug670433.f90.tags
    tests/ctags/bug699171.py
    tests/ctags/bug699171.py.tags
    tests/ctags/bug722501.sql
    tests/ctags/bug722501.sql.tags
    tests/ctags/bug726712.f90
    tests/ctags/bug726712.f90.tags
    tests/ctags/bug726875.f90
    tests/ctags/bug726875.f90.tags
    tests/ctags/bug734933.f90
    tests/ctags/bug734933.f90.tags
    tests/ctags/bug762027.v
    tests/ctags/bug762027.v.tags
    tests/ctags/bug814263.java
    tests/ctags/bug814263.java.tags
    tests/ctags/bug823000.sql
    tests/ctags/bug823000.sql.tags
    tests/ctags/bug842077.pl
    tests/ctags/bug842077.pl.tags
    tests/ctags/bug849591.cpp
    tests/ctags/bug849591.cpp.tags
    tests/ctags/bug852368.cpp
    tests/ctags/bug852368.cpp.tags
    tests/ctags/bug858165.f90
    tests/ctags/bug858165.f90.tags
    tests/ctags/bug872494.cpp
    tests/ctags/bug872494.cpp.tags
    tests/ctags/bug877956.f90
    tests/ctags/bug877956.f90.tags
    tests/ctags/bug960316.v
    tests/ctags/bug960316.v.tags
    tests/ctags/bug961001.v
    tests/ctags/bug961001.v.tags
    tests/ctags/byte.f
    tests/ctags/byte.f.tags
    tests/ctags/char-selector.f90
    tests/ctags/char-selector.f90.tags
    tests/ctags/classes.php
    tests/ctags/classes.php.tags
    tests/ctags/common.f
    tests/ctags/common.f.tags
    tests/ctags/continuation.f90
    tests/ctags/continuation.f90.tags
    tests/ctags/countall.sql
    tests/ctags/countall.sql.tags
    tests/ctags/cpp_destructor.cpp
    tests/ctags/cpp_destructor.cpp.tags
    tests/ctags/cython_sample.pyx
    tests/ctags/cython_sample.pyx.tags
    tests/ctags/db-trig.sql
    tests/ctags/db-trig.sql.tags
    tests/ctags/debian_432872.f90
    tests/ctags/debian_432872.f90.tags
    tests/ctags/directives.c
    tests/ctags/directives.c.tags
    tests/ctags/dopbl2.f
    tests/ctags/dopbl2.f.tags
    tests/ctags/enum.c
    tests/ctags/enum.c.tags
    tests/ctags/enum.java
    tests/ctags/enum.java.tags
    tests/ctags/events.cs
    tests/ctags/events.cs.tags
    tests/ctags/extern_variable.h
    tests/ctags/extern_variable.h.tags
    tests/ctags/format.pl
    tests/ctags/format.pl.tags
    tests/ctags/func_typedef.h
    tests/ctags/func_typedef.h.tags
    tests/ctags/general.cs
    tests/ctags/general.cs.tags
    tests/ctags/hex2dec.sql
    tests/ctags/hex2dec.sql.tags
    tests/ctags/implied_program.f
    tests/ctags/implied_program.f.tags
    tests/ctags/indexer.cs
    tests/ctags/indexer.cs.tags
    tests/ctags/infinite_loop.java
    tests/ctags/infinite_loop.java.tags
    tests/ctags/ingres_procedures.sql
    tests/ctags/ingres_procedures.sql.tags
    tests/ctags/initialization.f90
    tests/ctags/initialization.f90.tags
    tests/ctags/interface_indexers.cs
    tests/ctags/interface_indexers.cs.tags
    tests/ctags/interface_properties.cs
    tests/ctags/interface_properties.cs.tags
    tests/ctags/internal.cs
    tests/ctags/internal.cs.tags
    tests/ctags/intro.tex
    tests/ctags/intro.tex.tags
    tests/ctags/intro_orig.tex
    tests/ctags/intro_orig.tex.tags
    tests/ctags/invalid_name.f90
    tests/ctags/invalid_name.f90.tags
    tests/ctags/java_enum.java
    tests/ctags/java_enum.java.tags
    tests/ctags/jsFunc_tutorial.js
    tests/ctags/jsFunc_tutorial.js.tags
    tests/ctags/keyword_abstract.cs
    tests/ctags/keyword_abstract.cs.tags
    tests/ctags/keyword_catch_try.cs
    tests/ctags/keyword_catch_try.cs.tags
    tests/ctags/keyword_class.cs
    tests/ctags/keyword_class.cs.tags
    tests/ctags/keyword_const.cs
    tests/ctags/keyword_const.cs.tags
    tests/ctags/keyword_delegate.cs
    tests/ctags/keyword_delegate.cs.tags
    tests/ctags/keyword_enum.cs
    tests/ctags/keyword_enum.cs.tags
    tests/ctags/keyword_event.cs
    tests/ctags/keyword_event.cs.tags
    tests/ctags/keyword_explicit.cs
    tests/ctags/keyword_explicit.cs.tags
    tests/ctags/keyword_extern.cs
    tests/ctags/keyword_extern.cs.tags
    tests/ctags/keyword_implicit.cs
    tests/ctags/keyword_implicit.cs.tags
    tests/ctags/keyword_interface.cs
    tests/ctags/keyword_interface.cs.tags
    tests/ctags/keyword_namespace.cs
    tests/ctags/keyword_namespace.cs.tags
    tests/ctags/keyword_out.cs
    tests/ctags/keyword_out.cs.tags
    tests/ctags/keyword_override.cs
    tests/ctags/keyword_override.cs.tags
    tests/ctags/keyword_params.cs
    tests/ctags/keyword_params.cs.tags
    tests/ctags/keyword_private.cs
    tests/ctags/keyword_private.cs.tags
    tests/ctags/keyword_protected.cs
    tests/ctags/keyword_protected.cs.tags
    tests/ctags/keyword_public.cs
    tests/ctags/keyword_public.cs.tags
    tests/ctags/keyword_sealed.cs
    tests/ctags/keyword_sealed.cs.tags
    tests/ctags/keyword_static.cs
    tests/ctags/keyword_static.cs.tags
    tests/ctags/keyword_struct.cs
    tests/ctags/keyword_struct.cs.tags
    tests/ctags/keyword_virtual.cs
    tests/ctags/keyword_virtual.cs.tags
    tests/ctags/keyword_volatile.cs
    tests/ctags/keyword_volatile.cs.tags
    tests/ctags/labels.sql
    tests/ctags/labels.sql.tags
    tests/ctags/lanus.for
    tests/ctags/lanus.for.tags
    tests/ctags/line_directives.c
    tests/ctags/line_directives.c.tags
    tests/ctags/local.c
    tests/ctags/local.c.tags
    tests/ctags/macros.c
    tests/ctags/macros.c.tags
    tests/ctags/masm.asm
    tests/ctags/masm.asm.tags
    tests/ctags/matlab_backtracking.m
    tests/ctags/matlab_backtracking.m.tags
    tests/ctags/matlab_test.m
    tests/ctags/matlab_test.m.tags
    tests/ctags/maze.erl
    tests/ctags/maze.erl.tags
    tests/ctags/misc_types.f
    tests/ctags/misc_types.f.tags
    tests/ctags/misc_types.f90
    tests/ctags/misc_types.f90.tags
    tests/ctags/mode.php
    tests/ctags/mode.php.tags
    tests/ctags/moniker.x68.asm
    tests/ctags/moniker.x68.asm.tags
    tests/ctags/namelist.f
    tests/ctags/namelist.f.tags
    tests/ctags/namespace.cpp
    tests/ctags/namespace.cpp.tags
    tests/ctags/namespaces.php
    tests/ctags/namespaces.php.tags
    tests/ctags/namespaces2.php
    tests/ctags/namespaces2.php.tags
    tests/ctags/no_terminator.js
    tests/ctags/no_terminator.js.tags
    tests/ctags/numlib.f90
    tests/ctags/numlib.f90.tags
    tests/ctags/objectivec_implementation.mm
    tests/ctags/objectivec_implementation.mm.tags
    tests/ctags/objectivec_interface.mm
    tests/ctags/objectivec_interface.mm.tags
    tests/ctags/objectivec_property.mm
    tests/ctags/objectivec_property.mm.tags
    tests/ctags/objectivec_protocol.mm
    tests/ctags/objectivec_protocol.mm.tags
    tests/ctags/property.cs
    tests/ctags/property.cs.tags
    tests/ctags/prototype.h
    tests/ctags/prototype.h.tags
    tests/ctags/pure_elem.f95
    tests/ctags/pure_elem.f95.tags
    tests/ctags/random.sql
    tests/ctags/random.sql.tags
    tests/ctags/readlob.sql
    tests/ctags/readlob.sql.tags
    tests/ctags/readlong.sql
    tests/ctags/readlong.sql.tags
    tests/ctags/recursive.f95
    tests/ctags/recursive.f95.tags
    tests/ctags/refcurs.sql
    tests/ctags/refcurs.sql.tags
    tests/ctags/regexp.js
    tests/ctags/regexp.js.tags
    tests/ctags/secondary_fcn_name.js
    tests/ctags/secondary_fcn_name.js.tags
    tests/ctags/semicolon.f90
    tests/ctags/semicolon.f90.tags
    tests/ctags/signature.cpp
    tests/ctags/signature.cpp.tags
    tests/ctags/simple.bas
    tests/ctags/simple.bas.tags
    tests/ctags/simple.cbl
    tests/ctags/simple.cbl.tags
    tests/ctags/simple.html
    tests/ctags/simple.html.tags
    tests/ctags/simple.js
    tests/ctags/simple.js.tags
    tests/ctags/simple.ksh
    tests/ctags/simple.ksh.tags
    tests/ctags/simple.lua
    tests/ctags/simple.lua.tags
    tests/ctags/simple.mak
    tests/ctags/simple.mak.tags
    tests/ctags/simple.php
    tests/ctags/simple.php.tags
    tests/ctags/simple.pl
    tests/ctags/simple.pl.tags
    tests/ctags/simple.py
    tests/ctags/simple.py.tags
    tests/ctags/simple.rb
    tests/ctags/simple.rb.tags
    tests/ctags/simple.sh
    tests/ctags/simple.sh.tags
    tests/ctags/simple.tcl
    tests/ctags/simple.tcl.tags
    tests/ctags/spurious_label_tags.c
    tests/ctags/spurious_label_tags.c.tags
    tests/ctags/sql_single_quote.sql
    tests/ctags/sql_single_quote.sql.tags
    tests/ctags/state_machine.v
    tests/ctags/state_machine.v.tags
    tests/ctags/static_array.c
    tests/ctags/static_array.c.tags
    tests/ctags/stdcall.f
    tests/ctags/stdcall.f.tags
    tests/ctags/strings.rb
    tests/ctags/strings.rb.tags
    tests/ctags/structure.f
    tests/ctags/structure.f.tags
    tests/ctags/tabindent.py
    tests/ctags/tabindent.py.tags
    tests/ctags/test.py
    tests/ctags/test.py.tags
    tests/ctags/test.vhd
    tests/ctags/test.vhd.tags
    tests/ctags/traffic_signal.v
    tests/ctags/traffic_signal.v.tags
    tests/ctags/traits.php
    tests/ctags/traits.php.tags
    tests/ctags/union.f
    tests/ctags/union.f.tags
    tests/ctags/value.f
    tests/ctags/value.f.tags

Modified: tests/ctags/1795612.js
29 files changed, 29 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,29 @@
+
+// This file should generate the following tags:
+//    classes
+//      Test.RPC
+//    methods
+//      Test.RPC.asyncMethod
+//      Test.RPC.asyncRequest
+//    properties
+//      Test.RPC.request_id
+Test.RPC =
+{
+	request_id: 0,
+
+	asyncRequest: function(
+		/* string */	uri,
+		/* object */	data,
+		/* object */	callback)
+	{
+	},
+
+	asyncMethod: function(
+		/* string */	uri,
+		/* string */	method,
+		/* array */		params,
+		/* object */	callback)
+	{
+	}
+};
+


Modified: tests/ctags/1795612.js.tags
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+# format=tagmanager
+RPC�1�Test�0
+asyncMethod�128�Test.RPC�0
+asyncRequest�128�Test.RPC�0
+request_id�64�Test.RPC�0


Modified: tests/ctags/1850914.js
24 files changed, 24 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,24 @@
+// This file should generate the following tags:
+//
+//   classes
+//     objectLiteral
+//   methods
+//     objectLiteral.objLiteralMethod
+//   properties
+//     objectLiteral.objLiteralProperty
+
+
+/**
+* This is an object literal
+*/
+var objectLiteral = {
+/**
+* This is a literal object property
+*/
+objLiteralProperty : 1,
+/**
+* This is a literal object method
+*/
+objLiteralMethod : function(){}
+}
+


Modified: tests/ctags/1850914.js.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+objLiteralMethod�128�objectLiteral�0
+objLiteralProperty�64�objectLiteral�0
+objectLiteral�1�0


Modified: tests/ctags/1878155.js
19 files changed, 19 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,19 @@
+// Tags should include:
+//   functions
+//       my_function
+//   classes
+//       RE
+//   global variables
+//       foo
+//
+
+// This should handle the escaped quote
+var RE={/foo\"/: "bar"};
+
+// This should also handle the escaped quote
+// A tag should be created for the global variable "foo".
+var foo="foo \" some other stuff";
+
+// A tag should be created for this function "my_function".
+function my_function() {
+}


Modified: tests/ctags/1878155.js.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+RE�1�0
+foo�16384�0
+my_function�16�0


Modified: tests/ctags/1880687.js
191 files changed, 191 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,191 @@
+
+// All these examples contain various forms of IF statements
+// with missing semicolons.  Each of these are valid and must
+// be accommodated.
+//
+// After running ctags: ctags -f tags 1880687.js
+// The following tags should be generated:
+//     functions
+//       a
+//       b
+//       baz [f]
+//       c
+//       d
+//       e
+//       f
+//       g
+//       h
+//       i
+//       j
+//       k
+//       l
+//       m
+//       n
+//       o
+//       p
+//       q
+//       r
+//       s
+//       t
+//       u
+//       v
+//       w
+//       w_sub1 [w]
+//       w_sub2 [w]
+//     classes
+//       MyClass
+//     methods
+//       MyClass_sub1 [MyClass]
+//       MyClass_sub2 [MyClass]
+
+function a(flag){
+    if(flag)
+        test(1);
+    else
+        test(2)
+}
+
+function b(){
+    var b= 33;
+}
+
+function c(flag){
+    if(flag)
+        test(1);
+}
+
+function d(){
+    var b= 33;
+}
+
+function e(flag){
+    if(flag)
+        test(1)
+}
+
+function f(){
+    var b= 33;
+    if (foo)
+            bar();
+    else
+        test(2);
+    function baz() {
+    }
+}
+
+function g(flag){
+    if(flag) {
+        test(1)
+    }
+}
+
+function h(){
+    var b= 33;
+}
+
+function i(flag){
+    if(flag) {
+        test(1);
+    }
+}
+
+function j(){
+    var b= 33;
+}
+
+function k(flag){
+    if(flag) {
+        test(1);
+    }
+    else
+        flag = false;
+}
+
+function l(){
+    var b= 33;
+}
+
+function m(flag){
+    if(flag) {
+        test(1);
+    }
+    else {
+        flag = false;
+    }
+}
+
+function n(){
+    var b= 33;
+}
+
+if (1)
+    l();
+function o(){
+    var b= 33;
+}
+
+if (1){
+    l();
+}
+function p(){
+    var b= 33;
+}
+
+if (1){
+    l();
+} else
+    l();
+function q(){
+    var b= 33;
+}
+
+function r(flag){
+    if (flag) {
+        value = 33
+    }
+}
+
+function s(){
+    var b= 33;
+}
+
+function t(flag){
+    if (flag) {
+        b= new Object()
+    }
+}
+
+function u(flag){
+    if (flag) {
+        b= ({})
+    }
+}
+
+function v(flag){
+    if (flag) {
+        b= {}
+    }
+}
+
+function w(){
+    function w_sub1(x){
+        if (! x)
+            x = {foo:bar};
+        
+        var dummy1, dummy2;
+    }
+    function w_sub2(){
+    }
+}
+
+MyClass = {
+    MyClass_sub1: function(x){
+        if (! x)
+            x = { };
+        
+        var dummy3, dummy4;
+    },
+    MyClass_sub2: function(x){
+        var dummy5 = 42;
+    }
+};


Modified: tests/ctags/1880687.js.tags
30 files changed, 30 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,30 @@
+# format=tagmanager
+MyClass�1�0
+MyClass_sub1�128�MyClass�0
+MyClass_sub2�128�MyClass�0
+a�16�0
+b�16�0
+baz�16�f�0
+c�16�0
+d�16�0
+e�16�0
+f�16�0
+g�16�0
+h�16�0
+i�16�0
+j�16�0
+k�16�0
+l�16�0
+m�16�0
+n�16�0
+o�16�0
+p�16�0
+q�16�0
+r�16�0
+s�16�0
+t�16�0
+u�16�0
+v�16�0
+w�16�0
+w_sub1�16�w�0
+w_sub2�16�w�0


Modified: tests/ctags/2023624.js
15 files changed, 15 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,15 @@
+/*
+ * Both functions should be tagged.
+ * The embedded quote was fixed in issue:
+ * [ 1878155 ] Javascript escaped quotation mark brakes output
+ * [ 2023712 ] parseString for javascript broken on embedded quote
+ * The fix will be part of the 5.8 release.
+ */
+
+function f1() {
+    var str = 'This function will be listed.';
+}
+
+function f2() {
+    var str = 'This function won\'t.';
+}


Modified: tests/ctags/2023624.js.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+f1�16�0
+f2�16�0


Modified: tests/ctags/3184782.sql
41 files changed, 41 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,41 @@
+create or replace package body p_test is
+
+procedure do_this_stuff is begin
+if true then
+    for idx in z+1 .. myarr.last loop
+        if myarr.exists(idx) then
+            null;
+        end if;
+    end loop;
+
+elsif true then
+    for idx in myarr.first .. myarr.last loop
+        if myarr.exists(idx) then
+            null;
+        end if;
+    end loop;
+end if;
+end do_this_stuff;
+
+procedure process_this (
+    p_flag in boolean
+) is
+begin
+    null;
+end process_this;
+
+procedure myfn1 (
+    p_str1 in varchar2,
+    p_str2 in varchar2
+) is begin
+process_this(false);
+end myfn1;
+
+procedure myfn2 (
+    p_str1 in varchar2,
+    p_str2 in varchar2
+) is begin
+process_this(true);
+end myfn2;
+
+end p_test;


Modified: tests/ctags/3184782.sql.tags
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+# format=tagmanager
+do_this_stuff�256�0
+elsif�16384�0
+myfn1�256�0
+myfn2�256�0
+p_test�512�0
+process_this�256�0


Modified: tests/ctags/3470609.js
48 files changed, 48 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,48 @@
+/*
+ * Test for properties values.  Everything is valid here and must be
+ * correctly parsed.
+ * 
+ * Output of ctags -f - 3470609.js should be:
+ * 
+ * Properties:
+ *    root.array
+ *    root.decimal
+ *    root.id
+ *    root.neg
+ *    root.parentheses
+ *    root.string
+ *    root.subObject.subProperty
+ * 
+ * Classes:
+ *    root
+ *    root.subObject
+ * 
+ * Methods:
+ *    root.method
+ *    root.subObject.subFunction
+ * 
+ * Functions:
+ *    f
+ */
+
+var root = {
+    'string' : 'hello world',
+    'method' : function() {
+        x = 42;
+    },
+    'id' : 1,
+    'neg' : -1,
+    'decimal' : 1.3,
+    'subObject' : {
+        'subProperty': 42,
+        'subFunction': function() {
+            y = 43;
+        }
+    },
+    'array' : [1, 2, 3],
+    'parentheses' : (2 * (2 + 3))
+}
+
+function f() {
+
+}


Modified: tests/ctags/3470609.js.tags
13 files changed, 13 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,13 @@
+# format=tagmanager
+array�64�root�0
+decimal�64�root�0
+f�16�0
+id�64�root�0
+method�128�root�0
+neg�64�root�0
+parentheses�64�root�0
+root�1�0
+string�64�root�0
+subFunction�128�root.subObject�0
+subObject�1�root�0
+subProperty�64�root.subObject�0


Modified: tests/ctags/3526726.tex
2984 files changed, 2984 insertions(+), 0 deletions(-)
===================================================================
No diff available, check online


Modified: tests/ctags/3526726.tex.tags
155 files changed, 155 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,155 @@
+# format=tagmanager
+ I think I found a bug in Snort. Now what?�65536�0
+ I've got RedHat and ....�65536�0
+A Rule with PCRE causes a failure to load snort.conf.  Why?�65536�0
+After I add new rules or comment out rules how do I make Snort reload?�65536�0
+Are rule keywords ORed or ANDed together?�65536�0
+Are there other output systems for Snort besides ``Barnyard''?\label{spoolers�65536�0
+BASE appears to be broken in Lynx �65536�0
+Background�64�0
+Can Snort be evaded by the use of polymorphic mutators on shellcode?�65536�0
+Can Snort trigger a rule by MAC addresses?�65536�0
+Can priorities be assigned to alerts using BASE?  �65536�0
+Configuring Snort�64�0
+Development�64�0
+Does Snort handle IP defragmentation?�65536�0
+Does Snort log the full packets when it generates alerts? �65536�0
+Does Snort perform TCP stream reassembly?�65536�0
+Does Snort perform stateful protocol analysis?�65536�0
+Does snort see packets filtered by IPTables/IPChains/IPF/PF?�65536�0
+Errors loading rules files�65536�0
+Getting Fancy�64�0
+Getting Started�64�0
+How can I deactivate a rule?�65536�0
+How can I define an address to be anything except some hosts?�65536�0
+How can I examine logged packets in more detail?�65536�0
+How can I protect web servers running on ports other than 80?�65536�0
+How can I run Snort on multiple interfaces simultaneously?�65536�0
+How can I specify a list of ports in a rule?�65536�0
+How can I test Snort without having an Ethernet card or a connection to other computers?  �65536�0
+How can I use Snort to log HTTP URLs or SMTP traffic?�65536�0
+How do I build this BASE thing?�65536�0
+How do I configure stream4?�65536�0
+How do I get Snort and ACID working?�65536�0
+How do I get Snort to e-mail me alerts?�65536�0
+How do I get Snort to log the packet payload as well as the header?�65536�0
+How do I ignore traffic coming from a particular host or hosts?�65536�0
+How do I log a specific type of traffic and send alerts to syslog?�65536�0
+How do I log to multiple databases or output plugins?�65536�0
+How do I process those Snort logs into reports?�65536�0
+How do I run Snort?�65536�0
+How do I set EXTERNAL\_NET?�65536�0
+How do I setup a receive-only ethernet cable?�65536�0
+How do I setup snort on a `stealth' interface? �65536�0
+How do I test Snort alerts and logging?�65536�0
+How do I turn off ``spp:possible EVASIVE RST detection'' alerts?�65536�0
+How do I understand this traffic and do IDS alert analysis?�65536�0
+How do I use a remote syslog machine?�65536�0
+How do you get Snort to ignore some traffic?�65536�0
+How do you pronounce the names of some of these guys who work on Snort?�65536�0
+How do you put Snort in debug mode? �65536�0
+How does rule ordering work?�65536�0
+How long can address lists, variables, or rules be?�65536�0
+How to start Snort as a win32 service? �65536�0
+I am getting `snort [pid] uses obsolete (PF\_INET, SOCK\_PACKET)' warnings. What's wrong?�65536�0
+I am getting too many ``IIS Unicode attack detected'' and/or ``CGI Null Byte attack detected'' false positives.  How can I turn this detection off? �65536�0
+I am still getting bombarded with spp\_portscan messages even though the IP that I am getting the portscan from is in my \$DNS\_SERVERs var �65536�0
+I am using Snort on Windows and receive an ``OpenPcap() error upon startup: ERROR: OpenPcap() device open: Error opening adapter'' message. What's wrong? �65536�0
+I have one network card and two aliases, how can I force Snort to ``listen'' on both addresses?�65536�0
+I hear people talking about ``Barnyard''. What's that?\label{barnyard�65536�0
+I just downloaded a new ruleset and now Snort fails, complaining about the�65536�0
+I try to start Snort and it gives an error like ``ERROR: Unable to open�65536�0
+I want to build a Snort box.  Will this $<$Insert list of hardware$>$ handle $<$this much$>$ traffic? �65536�0
+I'm getting large amounts of $<$some alerts type$>$. What should I do?  Where can I go to find out more about it? �65536�0
+I'm getting lots of *ICMP Ping Speedera*, is this bad?�65536�0
+I'm not seeing any interfaces listed under Win32.�65536�0
+I'm on a switched network, can I still use Snort?�65536�0
+IDSCenter�2048�0
+Is Fyodor Yarochkin the same Fyodor who wrote nmap?�65536�0
+Is Snort vulnerable to IDS noise generators like ``Stick'' and ``Snot''?�65536�0
+Is it possible to have Snort call an external program when an alert is raised?�65536�0
+Is it possible with snort to add a ipfilter/ipfw rule to a firewall? �65536�0
+Is there a private SID number range so my rules don't conflict?�65536�0
+It's not working on Win32, how can I tell if my problem is Snort or�65536�0
+Libpcap complains about permissions problems, what's going on?�65536�0
+Miscellaneous�64�0
+My /var/log/snort directory gets very large...�65536�0
+My BASE db connection times-out when performing long operations (e.g.�65536�0
+My IP address is assigned dynamically to my interface, can I use Snort with it?�65536�0
+My network spans multiple subnets.  How do I define HOME\_NET?�65536�0
+My snort crashes, how do I restart it?�65536�0
+On HPUX I get device lan0 open: recv\_ack: promisc\_phys: Invalid argument�65536�0
+Portscans are not being logged to my database �65536�0
+Problems�64�0
+Rules and Alerts�64�0
+SMB alerts aren't working, what's wrong? �65536�0
+Snort complains about the ``react'' keyword...�65536�0
+Snort fails to respond to a kill signal on Linux.  Why?�65536�0
+Snort is behind a firewall (ipf/pf/ipchains/ipfilter) and awfully quiet...�65536�0
+Snort is dying with a `can not create file' error and I have plenty of diskspace. What's wrong?�65536�0
+Snort is not logging to my database�65536�0
+Snort is not logging to syslog�65536�0
+Snort says BACKDOOR SIGNATURE... does my machine have a Trojan? �65536�0
+Snort says ``Garbage Packet with Null Pointer discarded!'' Huh?�65536�0
+Snort says ``Ran Out Of Space.'' Huh?�65536�0
+Snort says ``Rule IP addr (``1.1.1.1'') didn't x-late, WTF?''�65536�0
+Trying to install snort it says: ``bad interpreter: No such file or�65536�0
+What about `SMB Name Wildcard' alerts? �65536�0
+What about ``CGI Null Byte attacks?'' �65536�0
+What about all these false alarms? �65536�0
+What are CIDR netmasks? �65536�0
+What are HOME\_NET and EXTERNAL\_NET?�65536�0
+What are all these ICMP files in subdirectories under /var/log/snort? �65536�0
+What are all these ``ICMP destination unreachable'' alerts? �65536�0
+What are some resources that I can use to understand more about source�65536�0
+What are these IDS codes in the alert names? �65536�0
+What do the numbers (ie: [116:56:1]) in front of a Snort alert mean?�65536�0
+What is the best way to use Snort to block attack traffic?�65536�0
+What is the difference between ``Alerting'' and ``Logging''?�65536�0
+What is the use of the ``-r'' switch to read tcpdump files?  �65536�0
+What the heck is a SYNFIN scan?�65536�0
+What the heck is a SYNFIN scan? �65536�0
+What the heck is a ``Stealth scan''?�65536�0
+What version of Winpcap do I need?\label{winpcap�65536�0
+What's this about a Snort drinking game?�65536�0
+Where are my log files located?  What are they named?�65536�0
+Where can I get more reading and courses about IDS?\label{courses�65536�0
+Where do I find binary packages for BlueHat BSD-Linux-RT?�65536�0
+Where do I get more help on Snort?�65536�0
+Where do I get the latest version of Winpcap?�65536�0
+Where do I get the latest version of libpcap? �65536�0
+Where do the distance and within keywords work from to modify content�65536�0
+Where does one obtain new/modifed rules? How do you merge them in?�65536�0
+Where's a good place to physically put a Snort sensor?�65536�0
+Which takes precedence, commandline or rule file ?�65536�0
+Why am I seeing so many ``SMTP RCPT TO overflow'' alerts ?�65536�0
+Why are my unified alert times off by +/- N hours?�65536�0
+Why are there no subdirectories under /var/log/snort for IP addresses?�65536�0
+Why can't snort see one of the 10Mbps or 100Mbps traffic on my autoswitch hub?�65536�0
+Why do certain alerts seem to have `unknown' IPs in BASE?  �65536�0
+Why do many Snort rules have the flags P (TCP PuSH) and A (TCP ACK) set? �65536�0
+Why does Snort complain about /var/log/snort?�65536�0
+Why does building Snort complain about missing references? �65536�0
+Why does building snort fail with errors about yylex and lex\_init? �65536�0
+Why does chrooted Snort die when I send it a SIGHUP? \label{chroot�65536�0
+Why does snort report ``Packet loss statistics are unavailable under Linux?''�65536�0
+Why does the `error deleting alert' message occur when attempting to delete an alert with BASE?  �65536�0
+Why does the portscan plugin log ``stealth'' packets even though the host is in the portscan-ignorehosts list? �65536�0
+Why does the program generate alerts on packets that have pass rules?  �65536�0
+barnyard�2048�0
+center�1�0
+chroot�2048�0
+courses�2048�0
+document�1�0
+enumerate�1�0
+itemize�1�0
+latexonly�1�0
+myquote�16�0
+myref�16�0
+quote�1�0
+spoolers�2048�0
+stealth�2048�0
+stream4�2048�0
+tabular�1�0
+verbatim�1�0
+winpcap�2048�0


Modified: tests/ctags/68hc11.asm
23 files changed, 23 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,23 @@
+INTERRUPTS:
+;
+PORTD       EQU  $1008
+;
+SP          EQU  $20
+;
+TRAPP       FCB CR,LF
+            FCB CR,LF
+            FCC  '    ******** ILLEGAL OPCODE TRAP !!! ********'
+            FCB CR,LF
+            FCB 0
+PROMPT      FCB CR,LF
+            FCC  '               68Mon V1.2 (C) 1992 Keith Vasilakes'
+            FCB CR,LF
+            FCB 0
+COLD        LDS  #STACK
+            LDAA #$20
+
+; http://www.mekatronix.com/downloads/docs/as11_man.pdf
+sym1 EQU 1
+sym2: EQU 2
+sym3:
+sym4: bne sym3


Modified: tests/ctags/68hc11.asm.tags
11 files changed, 11 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,11 @@
+# format=tagmanager
+COLD�256�0
+INTERRUPTS�256�0
+PORTD�65536�0
+PROMPT�256�0
+SP�65536�0
+TRAPP�256�0
+sym1�65536�0
+sym2�65536�0
+sym3�256�0
+sym4�256�0


Modified: tests/ctags/Makefile.am
220 files changed, 220 insertions(+), 0 deletions(-)
===================================================================
@@ -3,6 +3,226 @@ dist_check_SCRIPTS = runner.sh
 
 NULL =
 test_sources = \
+	1795612.js						\
+	1850914.js						\
+	1878155.js						\
+	1880687.js						\
+	2023624.js						\
+	3184782.sql						\
+	3470609.js						\
+	3526726.tex						\
+	68hc11.asm						\
+	angle_bracket.cpp				\
+	array_ref_and_out.cs			\
+	array_spec.f90					\
+	array-spec.f90					\
+	attributes.cs					\
+	auto.f							\
+	bit_field.c						\
+	bracematch.js					\
+	bug1020715.cpp					\
+	bug1020715.c					\
+	bug1086609.c					\
+	bug1093123.cpp					\
+	bug1111214-j-chan.v				\
+	bug1111214.v					\
+	bug1201689.c					\
+	bug1447756.java					\
+	bug1458930.c					\
+	bug1466117.c					\
+	bug1491666.c					\
+	bug1515910.cs					\
+	bug1548443.cpp					\
+	bug1563476.cpp					\
+	bug1570779.sql					\
+	bug1575055.cpp					\
+	bug1585745.cpp					\
+	bug1611054.cs					\
+	bug1691412.java					\
+	bug1742588.rb					\
+	bug1743330.v					\
+	bug1764143.h					\
+	bug1764148.py					\
+	bug1770479.cpp					\
+	bug1773926.cpp					\
+	bug1777344.java					\
+	bug1799340.cpp					\
+	bug1799343-1.cpp				\
+	bug1799343-2.cpp				\
+	bug1800065.cs					\
+	bug1809024.py					\
+	bug1830343.cs					\
+	bug1830344.cs					\
+	bug1856363.py					\
+	bug1906062.py					\
+	bug1907083.cpp					\
+	bug1924919.cpp					\
+	bug1938565.sql					\
+	bug1944150.sql					\
+	bug1950327.js					\
+	bug1988026.py					\
+	bug1988027.py					\
+	bug1988130.py					\
+	bug2049723.java					\
+	bug2075402.py					\
+	bug2117073.java					\
+	bug2374109.vhd					\
+	bug2411878.cs					\
+	bug2747828.v					\
+	bug2777310.js					\
+	bug2781264.rb					\
+	bug2886870.tex					\
+	bug2888482.js					\
+	bug3036476.js					\
+	bug3168705.py					\
+	bug3571233.js					\
+	bug507864.c						\
+	bug538629.asm					\
+	bug556645.c						\
+	bug556646.c						\
+	bug565813.f90					\
+	bug612019.pas					\
+	bug612621.pl					\
+	bug620288.f						\
+	bug639639.h						\
+	bug639644.hpp					\
+	bug665086.cpp					\
+	bug670433.f90					\
+	bug699171.py					\
+	bug722501.sql					\
+	bug726712.f90					\
+	bug726875.f90					\
+	bug734933.f90					\
+	bug762027.v						\
+	bug814263.java					\
+	bug823000.sql					\
+	bug842077.pl					\
+	bug849591.cpp					\
+	bug852368.cpp					\
+	bug858165.f90					\
+	bug872494.cpp					\
+	bug877956.f90					\
+	bug960316.v						\
+	bug961001.v						\
+	byte.f							\
+	char-selector.f90				\
+	classes.php						\
+	common.f						\
+	continuation.f90				\
+	countall.sql					\
+	cpp_destructor.cpp				\
+	cython_sample.pyx				\
+	db-trig.sql						\
+	debian_432872.f90				\
+	directives.c					\
+	dopbl2.f						\
+	enum.c							\
+	enum.java						\
+	events.cs						\
+	extern_variable.h				\
+	format.pl						\
+	func_typedef.h					\
+	general.cs						\
+	hex2dec.sql						\
+	implied_program.f				\
+	indexer.cs						\
+	infinite_loop.java				\
+	ingres_procedures.sql			\
+	initialization.f90				\
+	interface_indexers.cs			\
+	interface_properties.cs			\
+	internal.cs						\
+	intro_orig.tex					\
+	intro.tex						\
+	invalid_name.f90				\
+	java_enum.java					\
+	jsFunc_tutorial.js				\
+	keyword_abstract.cs				\
+	keyword_catch_try.cs			\
+	keyword_class.cs				\
+	keyword_const.cs				\
+	keyword_delegate.cs				\
+	keyword_enum.cs					\
+	keyword_event.cs				\
+	keyword_explicit.cs				\
+	keyword_extern.cs				\
+	keyword_implicit.cs				\
+	keyword_interface.cs			\
+	keyword_namespace.cs			\
+	keyword_out.cs					\
+	keyword_override.cs				\
+	keyword_params.cs				\
+	keyword_private.cs				\
+	keyword_protected.cs			\
+	keyword_public.cs				\
+	keyword_sealed.cs				\
+	keyword_static.cs				\
+	keyword_struct.cs				\
+	keyword_virtual.cs				\
+	keyword_volatile.cs				\
+	labels.sql						\
+	lanus.for						\
+	line_directives.c				\
+	local.c							\
+	macros.c						\
+	masm.asm						\
+	matlab_backtracking.m			\
+	matlab_test.m					\
+	maze.erl						\
+	misc_types.f90					\
+	misc_types.f					\
+	mode.php						\
+	moniker.x68.asm					\
+	namelist.f						\
+	namespace.cpp					\
+	namespaces2.php					\
+	namespaces.php					\
+	no_terminator.js				\
+	numlib.f90						\
+	objectivec_implementation.mm	\
+	objectivec_interface.mm			\
+	objectivec_property.mm			\
+	objectivec_protocol.mm			\
+	Package.pm						\
+	property.cs						\
+	prototype.h						\
+	pure_elem.f95					\
+	random.sql						\
+	readlob.sql						\
+	readlong.sql					\
+	recursive.f95					\
+	refcurs.sql						\
+	regexp.js						\
+	secondary_fcn_name.js			\
+	semicolon.f90					\
+	signature.cpp					\
+	simple.bas						\
+	simple.cbl						\
+	simple.html						\
+	simple.js						\
+	simple.ksh						\
+	simple.lua						\
+	simple.mak						\
+	simple.php						\
+	simple.pl						\
+	simple.py						\
+	simple.rb						\
+	simple.sh						\
+	simple.tcl						\
+	spurious_label_tags.c			\
+	sql_single_quote.sql			\
+	state_machine.v					\
+	static_array.c					\
+	stdcall.f						\
+	strings.rb						\
+	structure.f						\
+	tabindent.py					\
+	test.py							\
+	test.vhd						\
+	traffic_signal.v				\
+	traits.php						\
+	union.f							\
+	value.f							\
 	$(NULL)
 test_results = $(test_sources:=.tags)
 


Modified: tests/ctags/Package.pm
57 files changed, 57 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,57 @@
+# This file is intended to test package keyword support along with
+# multi-line subroutine definitions, like this:
+#   sub
+# 
+#   somefunction
+#   {...
+
+package Test::One;
+
+package Test::One::Two;
+
+package Test;
+
+use strict;
+use warnings;
+
+sub
+
+ init {
+}
+
+use constant
+CONST => 1;
+
+=head2 quo
+
+This is 'quo' subroutine
+
+=cut
+
+sub quo;
+
+quo;
+
+Test::quo;
+
+sub quo {
+    goto END;
+    die;
+END:
+END2  :
+    print "END!\n";
+    return;
+}
+
+sub xuz :lvalue;
+
+sub xtz (&@;$) :lvalue;
+  
+sub
+# This should create a tag
+dude
+{
+    1;
+}
+
+1;


Modified: tests/ctags/Package.pm.tags
10 files changed, 10 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,10 @@
+# format=tagmanager
+CONST�2�0
+END�65536�0
+END2�65536�0
+Test�512�0
+Test::One�512�0
+Test::One::Two�512�0
+dude�16�0
+init�16�0
+quo�16�0


Modified: tests/ctags/angle_bracket.cpp
16 files changed, 16 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,16 @@
+static void foo (int nelem)
+{
+    int rsize = 2;
+    while (nelem < 0) {
+	rsize <<= 1;
+    }
+}
+
+static void bar (int value)
+{
+    return value < 0 ? value : 3;
+}
+
+static bar2 (void)
+{
+}


Modified: tests/ctags/angle_bracket.cpp.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+bar�16�(int value)�0�void
+bar2�16�(void)�0
+foo�16�(int nelem)�0�void


Modified: tests/ctags/array-spec.f90
10 files changed, 10 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,10 @@
+      MODULE inm_df
+      IMPLICIT none
+      SAVE
+      TYPE df_type
+      REAL(8), POINTER :: &
+       df_mb_time(:),              df_wb_time(:)
+      REAL(4), POINTER :: &
+       df_mb_data(:,:),  df_wb_data(:,:)
+      END TYPE
+      END MODULE inm_df


Modified: tests/ctags/array-spec.f90.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+df_type�4096�inm_df�0
+inm_df�256�0


Modified: tests/ctags/array_ref_and_out.cs
33 files changed, 33 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,33 @@
+// Programmer's Reference: Passing Array Using ref and out
+public static void MyMethod(out int[] arr) 
+{
+   arr = new int[10];   // definite assignment of arr
+}
+
+public static void MyMethod(ref int[] arr) 
+{
+   arr = new int[10];   // arr initialized to a different array
+}
+
+using System; 
+class TestOut 
+{
+   static public void FillArray(out int[] myArray) 
+   {
+      // Initialize the array:
+      myArray = new int[5] {1, 2, 3, 4, 5};
+   }
+
+   static public void Main() 
+   {
+      int[] myArray; // Initialization is not required
+
+      // Pass the array to the callee using out:
+      FillArray(out myArray);
+
+      // Display the array elements:
+      Console.WriteLine("Array elements are:");
+      for (int i=0; i < myArray.Length; i++)
+         Console.WriteLine(myArray[i]);
+   }
+}


Modified: tests/ctags/array_ref_and_out.cs.tags
6 files changed, 6 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,6 @@
+# format=tagmanager
+FillArray�128�(out int[] myArray)�TestOut�0�public void
+Main�128�()�TestOut�0�public void
+MyMethod�128�(out int[] arr)�0�public void
+MyMethod�128�(ref int[] arr)�0�public void
+TestOut�1�0


Modified: tests/ctags/array_spec.f90
15 files changed, 15 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,15 @@
+! Bug reported by Jim Chen on 31 Dec 2002
+module Global_Variables
+implicit none
+
+! Example of array-spec in entity-decl
+real*8, save ::         &
+H (NDIM, NDIM) = 0.D0,  &
+H0(NDIM, NDIM),         &
+H1(NDIM, NDIM) = 0.D0,  &
+H2(NDIM, NDIM) = 0.D0,  &
+H3(NDIM, NDIM) = 0.D0,  &
+H4(NDIM, NDIM) = 0.D0,  &
+H5(NDIM, NDIM) = 0.D0
+
+end module Global_Variables


Modified: tests/ctags/array_spec.f90.tags
9 files changed, 9 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,9 @@
+# format=tagmanager
+Global_Variables�256�0
+H�16384�Global_Variables�0
+H0�16384�Global_Variables�0
+H1�16384�Global_Variables�0
+H2�16384�Global_Variables�0
+H3�16384�Global_Variables�0
+H4�16384�Global_Variables�0
+H5�16384�Global_Variables�0


Modified: tests/ctags/attributes.cs
22 files changed, 22 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,22 @@
+[DllImport] public class MyDllimportClass {}
+
+[DllImport("user32.dll", SetLastError=false, ExactSpelling=false)]
+[DllImport("user32.dll", ExactSpelling=false, SetLastError=false)]
+[DllImport("user32.dll")]
+
+[Conditional("DEBUG"), Conditional("TEST1")] void TraceMethod() {}
+
+using System;
+[AttributeUsage(AttributeTargets.Class|AttributeTargets.Struct)]
+public class Author : Attribute
+{
+   public Author(string name) { this.name = name; version = 1.0; }
+   public double version;
+   string name;
+}
+
+[AttributeUsage(AttributeTargets.Class|AttributeTargets.Struct,
+   AllowMultiple=true)] // multiuse attribute
+public class Author : Attribute
+{
+}


Modified: tests/ctags/attributes.cs.tags
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+# format=tagmanager
+Author�1�0
+Author�128�(string name)�Author�0
+MyDllimportClass�1�0
+TraceMethod�128�()�0�[][][][]void
+name�8�Author�0
+version�8�Author�0�double


Modified: tests/ctags/auto.f
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+! Provided by Brian Helsinki, 7 March 2003
+	program AUTO_TEST
+	AUTOMATIC A, B, C 
+	AUTOMATIC REAL P, D, Q 
+	!IMPLICIT AUTOMATIC REAL (X-Z) 
+	END
+


Modified: tests/ctags/auto.f.tags
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+# format=tagmanager
+AUTO_TEST�512�0
+D�16384�AUTO_TEST�0
+P�16384�AUTO_TEST�0
+Q�16384�AUTO_TEST�0


Modified: tests/ctags/bit_field.c
35 files changed, 35 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,35 @@
+struct bit_fields {
+    unsigned int a: 1;
+    unsigned int b: 1;
+    unsigned int c: 2;
+};
+
+struct {
+    unsigned sign  : 1;
+    unsigned exp   : _FP_EXPBITS_D;
+    unsigned frac1 : _FP_FRACBITS_D - (_FP_IMPLBIT_D != 0) - _FP_W_TYPE_SIZE;
+    unsigned frac0 : _FP_W_TYPE_SIZE;
+};
+
+struct shortname_info {
+	unsigned char lower:1,
+		      upper:1,
+		      valid:1;
+};
+
+// Problem reported by Michael Brown on 23 October 2001.
+typedef struct
+{
+    BYTE 	public: 1;
+    BYTE 	bad2: 1;
+    BYTE 	group: 1;
+    BYTE 	personal: 1;
+} bitfield_flags;
+
+typedef struct
+{
+    BYTE	this;
+    BYTE	public;
+    BYTE	private;
+    BYTE	that;
+} mystruct;


Modified: tests/ctags/bit_field.c.tags
26 files changed, 26 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,26 @@
+# format=tagmanager
+a�64�bit_fields�0�int
+anon_struct_0�2048�0
+anon_struct_1�2048�0
+anon_struct_2�2048�0
+b�64�bit_fields�0�int
+bad2�64�anon_struct_1�0�BYTE
+bit_fields�2048�0
+bitfield_flags�4096�0�anon_struct_1
+c�64�bit_fields�0�int
+exp�64�anon_struct_0�0
+frac0�64�anon_struct_0�0
+frac1�64�anon_struct_0�0
+group�64�anon_struct_1�0�BYTE
+lower�64�shortname_info�0�char
+mystruct�4096�0�anon_struct_2
+personal�64�anon_struct_1�0�BYTE
+private�64�anon_struct_2�0�BYTE
+public�64�anon_struct_1�0�BYTE
+public�64�anon_struct_2�0�BYTE
+shortname_info�2048�0
+sign�64�anon_struct_0�0
+that�64�anon_struct_2�0�BYTE
+this�64�anon_struct_2�0�BYTE
+upper�64�shortname_info�0�char
+valid�64�shortname_info�0�char


Modified: tests/ctags/bracematch.js
45 files changed, 45 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,45 @@
+/*
+ * "Braces aren't properly matched in findCmdTerm()"
+ * 
+ * ctags -f - bracematch.js should output:
+ * 
+ * functions:
+ *    Container
+ *    Container.x
+ *    Container.y
+ * 
+ * classes:
+ *    MyClass
+ * 
+ * methods:
+ *    MyClass.insert
+ *    MyClass.wrap
+ */
+
+
+function Container() {
+  function x() {
+    if (!x)
+      x = { };
+  }
+
+  function y() {
+    
+  }
+}
+
+// from prototype.js, a lot simplified to only show the issue
+MyClass = {
+  insert: function(element, insertions) {
+    element = $(element);
+
+    if (condition)
+      insertions = {bottom:insertions};
+
+    var content, insert, tagName, childNodes;
+  },
+
+  wrap: function(element, wrapper, attributes) {
+    // ...
+  }
+}


Modified: tests/ctags/bracematch.js.tags
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+# format=tagmanager
+Container�16�0
+MyClass�1�0
+insert�128�MyClass�0
+wrap�128�MyClass�0
+x�16�Container�0
+y�16�Container�0


Modified: tests/ctags/bug1020715.c
52 files changed, 52 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,52 @@
+/*
+Bugs item #1020715, was opened at 2004-09-01 22:42
+Message generated for change (Tracker Item Submitted) made by Item Submitter
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=1020715&group_id=6556
+
+Category: None
+Group: None
+Status: Open
+Resolution: None
+Priority: 5
+Submitted By: Arne Georg Gleditsch (argggh)
+Assigned to: Nobody/Anonymous (nobody)
+Summary: Strange parsing of C code
+
+Initial Comment:
+Running ctags 5.5.4 like this
+
+/usr/local/bin/ctags --fields=+S --excmd=number -f - --c-types=+l /usr/src/source/2.6.6/drivers/scsi/aha152x.c | grep ^done
+
+returns a bogus entry for the function "done" on line
+1745 with a wacky signature.  The file aha152x.c is
+from Linux 2.6.6, but is appended for convenience.
+*/
+/*
+Date: 2007-08-14 01:00
+Sender: elliotth
+Hide
+
+i don't really understand why the other lines in the test case were
+necessary to exercise the bug, but changing parseParens to call
+processAngleBracket instead of just skipToMatch("<>") fixes this bug. i've
+committed that since it causes no regressions.
+
+
+Date: 2007-08-14 00:34
+Sender: elliotth
+Hide
+
+i've come up with a minimal test case, and committed it. it's pretty
+weird:
+*/
+void f() {
+	done(a<<1);
+	a->a;
+	if (a->a) {
+	}
+}
+/*
+change just about anything and the bizarre "done" tag goes away. you can't
+even switch from '->' to '.', which seems odd.
+*/


Modified: tests/ctags/bug1020715.c.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+f�16�()�0�void


Modified: tests/ctags/bug1020715.cpp
6 files changed, 6 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,6 @@
+void f() {
+ done(a<<1);
+ a->a;
+ if (a->a) {
+ }
+}


Modified: tests/ctags/bug1020715.cpp.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+f�16�()�0�void


Modified: tests/ctags/bug1086609.c
41 files changed, 41 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,41 @@
+/*
+Bugs item #1086609, was opened at 2004-12-16 13:07
+Message generated for change (Tracker Item Submitted) made by Item Submitter
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=1086609&group_id=6556
+
+Category: None
+Group: None
+Status: Open
+Resolution: None
+Priority: 5
+Submitted By: Mikhail Kruk (meshko)
+Assigned to: Nobody/Anonymous (nobody)
+Summary: ctags getting confused by #if 0
+
+Initial Comment:
+Here is a sample C program which confuses ctags.  I
+think every line in it is significant. Dropping any of
+the #ifdefs or the #define makes the problem go away:
+*/
+#if 0
+#define __PROC__
+int func1(
+#if 0
+#endif
+)
+{
+}
+#endif
+
+int func2(int a)
+{
+}
+/*
+Somehow the opening brace from line 3 doesn't get
+ignored and the closing brace does get ignored and
+ctags drops out on "int func2(int a)" line with "failed
+to find match for '(' at line 11" error.
+Granted, having #if 0 in the middle of args list is
+weird, but perfeclty legal.
+*/


Modified: tests/ctags/bug1086609.c.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+func2�16�(int a)�0�int


Modified: tests/ctags/bug1093123.cpp
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+#include <iostream>
+
+int main() {
+using namespace std;
+cout << 0 << endl;
+int m;
+}


Modified: tests/ctags/bug1093123.cpp.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+main�16�()�0�int


Modified: tests/ctags/bug1111214-j-chan.v
8 files changed, 8 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,8 @@
+/*
+*
+**/
+module top(outsig, insig);
+output outsig;
+input insig;
+assign outsig = insig;
+endmodule


Modified: tests/ctags/bug1111214-j-chan.v.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+insig�16384�0
+outsig�16384�0
+top�1�0


Modified: tests/ctags/bug1111214.v
17 files changed, 17 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,17 @@
+// File example.v
+//
+// Below is an example of a comment that is mis-parsed by exuberant ctags.
+// It uses the multi-line comment format, i.e. /* ... */ except that in
+// this case, the character sequence immediately preceeding the closing
+// delimiter is an asterisk. (Any even number of asterisks would have the
+// same problem.
+// The line immediately afterwards is used to demonstrate the problem.
+// the module name 'wahoo' isn't recognised, because the parser mistakenly
+// thinks we are still in a multi-line comment.
+/*
+ * I am a multi-line comment
+ * I happen to end in a strange
+ * (but legal) way: **/
+module wahoo ()
+begin
+end


Modified: tests/ctags/bug1111214.v.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+wahoo�1�0


Modified: tests/ctags/bug1201689.c
35 files changed, 35 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,35 @@
+/*
+Bugs item #1201689, was opened at 2005-05-13 18:18
+Message generated for change (Tracker Item Submitted) made by Item Submitter
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=1201689&group_id=6556
+
+Category: None
+Group: None
+Status: Open
+Resolution: None
+Priority: 5
+Submitted By: Scott Ferguson (shf301)
+Assigned to: Nobody/Anonymous (nobody)
+Summary: Variable Length Argument Lists in K&R Style not Parsed
+
+Initial Comment:
+A function with a K&R style parameter list that has a 
+variable length argument list will not be added to the tags file.
+
+For example create a file, say test.c with the following code
+*/
+void test(a, ...)
+char a;
+{
+    return;
+}
+/*
+Run ctags test.c.  the tags file with only contain the line:
+   a	test.c	/^char a;$/;"	v
+
+This occurs with ctags 5.3 and 5.5.4. 
+
+Variable length argument lists work fine if the function is in 
+ANSI style, void test(char a, ...) will work fine.
+*/


Modified: tests/ctags/bug1201689.c.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+a�16384�0�char


Modified: tests/ctags/bug1447756.java
9 files changed, 9 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,9 @@
+// Java 1.5 generic interfaces appear to be tagged on the
+// parameterized type name instead of the interface name,
+// e.g.,
+
+	      public interface Foo<T> {
+		      public T bar();
+	      }
+
+// is tagged on 'T' instead of 'Foo'.


Modified: tests/ctags/bug1447756.java.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+Foo�32�0
+bar�128�()�Foo�0�public T


Modified: tests/ctags/bug1458930.c
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+// test with --c-kinds=+p
+char x();
+wchar_t y();


Modified: tests/ctags/bug1458930.c.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+x�1024�()�0�char
+y�1024�()�0�wchar_t


Modified: tests/ctags/bug1466117.c
10 files changed, 10 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,10 @@
+typedef struct mystruct {
+	int a;
+	int b;
+};
+
+typedef struct {
+	int a;
+	int b;
+} mystruct;
+


Modified: tests/ctags/bug1466117.c.tags
8 files changed, 8 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,8 @@
+# format=tagmanager
+a�64�anon_struct_0�0�int
+a�64�mystruct�0�int
+anon_struct_0�2048�0
+b�64�anon_struct_0�0�int
+b�64�mystruct�0�int
+mystruct�2048�0
+mystruct�4096�0�anon_struct_0


Modified: tests/ctags/bug1491666.c
13 files changed, 13 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,13 @@
+typedef struct {
+	int
+		x;
+
+	float
+		y;
+} my_struct;
+
+void main (void) {
+	my_struct var1;
+	my_struct
+		var2;
+}


Modified: tests/ctags/bug1491666.c.tags
6 files changed, 6 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,6 @@
+# format=tagmanager
+anon_struct_0�2048�0
+main�16�(void)�0�void
+my_struct�4096�0�anon_struct_0
+x�64�anon_struct_0�0�int
+y�64�anon_struct_0�0�float


Modified: tests/ctags/bug1515910.cs
15 files changed, 15 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,15 @@
+// Simple generic classes.
+public class MyGenericClass1<T> { }
+
+// Derived enums.
+enum Enum1 : byte {
+	Value1, Values
+}
+
+// Verbatim strings.
+public class C {
+    private string str1 = @"abc\";
+    private int int1 = 123;
+    private string str2 = @"abc\";
+    private string str3 = "abc";
+}


Modified: tests/ctags/bug1515910.cs.tags
10 files changed, 10 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,10 @@
+# format=tagmanager
+C�1�0
+MyGenericClass1�1�0
+Value1�4�byte�0
+Values�4�byte�0
+byte�2�0
+int1�8�C�0�int
+str1�8�C�0
+str2�8�C�0
+str3�8�C�0


Modified: tests/ctags/bug1548443.cpp
9 files changed, 9 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,9 @@
+union TestUnion
+{
+int _number;
+};
+
+struct TestStruct
+{
+int _number;
+};


Modified: tests/ctags/bug1548443.cpp.tags
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+# format=tagmanager
+TestStruct�2048�0
+TestUnion�8192�0
+_number�64�TestStruct�0�int
+_number�64�TestUnion�0�int


Modified: tests/ctags/bug1563476.cpp
16 files changed, 16 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,16 @@
+int g() {
+}
+
+template< typename Accessor, typename bEnable = void >
+struct IntroduceBitDef;
+
+template< typename Accessor >
+struct IntroduceBitDef< Accessor, typename
+boost::enable_if_c< CoreConfig::VERSION <= 3 >::type >
+{
+
+// class body here
+// anything after this point is not parsed by ctags
+ int f() { }
+
+};


Modified: tests/ctags/bug1563476.cpp.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+IntroduceBitDef�32768�0
+g�16�()�0�int


Modified: tests/ctags/bug1570779.sql
14 files changed, 14 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,14 @@
+-- This should find the "address" column when --sql-types=r is used
+-- ctags -f - --format=2 --excmd=pattern --fields=nks  --sort=no  --sql-types=cdfFlLPprstTvieURDVnxy bug1570779.sql
+-- employees       bug1570779.sql  /^CREATE TABLE employees ($/;"  t       line:2
+-- employees.id    bug1570779.sql  /^    id integer NOT NULL,$/;"  F       line:3
+-- employees.name  bug1570779.sql  /^    name varchar(20),$/;"     F       line:4
+-- employees.address       bug1570779.sql  /^    address varchar(50),$/;"  F   line:5
+
+CREATE TABLE employees (
+    id integer NOT NULL,
+    name varchar(20),
+    address varchar(50),
+    primary key (id)
+);
+


Modified: tests/ctags/bug1570779.sql.tags
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+# format=tagmanager
+employees�1�0
+employees.address�8�0
+employees.id�8�0
+employees.name�8�0


Modified: tests/ctags/bug1575055.cpp
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+namespace TheNamespace {
+	class MyClass { };
+	int variable;
+}


Modified: tests/ctags/bug1575055.cpp.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+MyClass�1�TheNamespace�0
+TheNamespace�256�0
+variable�64�TheNamespace�0�int


Modified: tests/ctags/bug1585745.cpp
8 files changed, 8 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,8 @@
+// Despite the weird whitespace, all these destructors should be recognized and tagged.
+Class1::~Class1() { }
+Class2::~ Class2() { }
+Class3:: ~Class3() { }
+Class4:: ~ Class4() { }
+class Class5 {
+    public: ~ Class5() { }
+};


Modified: tests/ctags/bug1585745.cpp.tags
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+# format=tagmanager
+Class5�1�0
+~Class1�16�()�Class1�0�Class1
+~Class2�16�Class2�0�Class2
+~Class3�16�()�Class3�0�Class3
+~Class4�16�Class4�0�Class4
+~Class5�16�Class5�0


Modified: tests/ctags/bug1611054.cs
8 files changed, 8 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,8 @@
+class C {
+	public String a() {
+		return @"c:\";
+	}
+	// this tag is missing in ctags 5.6
+	public void b() {
+	}
+}


Modified: tests/ctags/bug1611054.cs.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+C�1�0
+a�128�()�C�0�public String
+b�128�()�C�0�public void


Modified: tests/ctags/bug1691412.java
17 files changed, 17 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,17 @@
+public class C {
+ @NonNull
+ @CheckReturnValue(explanation = "When this function returns, the caller can get the Cipher name selected by the user in the Dialog.")
+ public static DefaultCipherDialog newInstance() {
+  DefaultCipherDialog instance = new DefaultCipherDialog();
+  instance.init();
+  return instance;
+ }
+
+ @Override
+ public String toString() { return "hello"; }
+}
+
+ at Target(ElementType.METHOD)
+ at Retention(RetentionPolicy.SOURCE)
+public @interface CustomAnnotation {
+}


Modified: tests/ctags/bug1691412.java.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+C�1�0
+newInstance�128�()�C�0�@NonNull @CheckReturnValue public DefaultCipherDialog
+toString�128�()�C�0�@Override public String


Modified: tests/ctags/bug1742588.rb
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+class A
+ def a()
+  super(" do ")
+ end
+ def b()
+ end
+end


Modified: tests/ctags/bug1742588.rb.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+A�1�0
+a�128�A�0
+b�128�A�0


Modified: tests/ctags/bug1743330.v
9 files changed, 9 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,9 @@
+// somewhat contrived, but i came across a real-life file that caused this
+// crash.
+value=
+hello/
+world;
+
+// dummy stuff to generate a tag
+module dummy;
+endmodule


Modified: tests/ctags/bug1743330.v.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+dummy�1�0


Modified: tests/ctags/bug1764143.h
27 files changed, 27 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,27 @@
+static inline void omap1_arch_reset(char mode)
+{
+	/*
+	 * Workaround for 5912/1611b bug mentioned in sprz209d.pdf p. 28
+	 * "Global Software Reset Affects Traffic Controller Frequency".
+	 */
+	if (cpu_is_omap5912()) {
+		omap_writew(omap_readw(DPLL_CTL) & ~(1 << 4),
+				 DPLL_CTL);
+		omap_writew(0x8, ARM_RSTCT1);
+	}
+
+	if (machine_is_voiceblue())
+		voiceblue_reset();
+	else
+		omap_writew(1, ARM_RSTCT1);
+}
+
+static inline void arch_reset(char mode)
+{
+	if (!cpu_is_omap24xx())
+		omap1_arch_reset(mode);
+	else
+		omap_prcm_arch_reset(mode);
+}
+
+#endif


Modified: tests/ctags/bug1764143.h.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+arch_reset�16�(char mode)�0�inline void
+omap1_arch_reset�16�(char mode)�0�inline void


Modified: tests/ctags/bug1764148.py
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+#!/usr/bin/python
+def PyFunc(msg): print msg


Modified: tests/ctags/bug1764148.py.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+PyFunc�16�(msg)�0


Modified: tests/ctags/bug1770479.cpp
17 files changed, 17 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,17 @@
+#include <sstream>
+
+int main (int argc, char **argv)
+{
+  std::ostringstream a;
+  a << "a";
+
+  std::ostringstream b;
+  b << "b";
+
+  return 0;
+}
+
+int foo (int i)
+{
+  return i;
+}


Modified: tests/ctags/bug1770479.cpp.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+foo�16�(int i)�0�int
+main�16�(int argc, char **argv)�0�int


Modified: tests/ctags/bug1773926.cpp
12 files changed, 12 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,12 @@
+#include <stdio.h>
+
+#define ERROR_HAPPENED
 50 



+#define OK 2
+#define NEXT_DEFINE 3
+
+int main(int argc, char* argv[])
+{
+    printf("Hello world\n");
+    return 0;
+}
+


Modified: tests/ctags/bug1773926.cpp.tags
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+# format=tagmanager
+ERROR_HAPPENED�65536�0
+NEXT_DEFINE�65536�0
+OK�65536�0
+main�16�(int argc, char* argv[])�0�int


Modified: tests/ctags/bug1777344.java
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+import java.util.*;
+public class bug1777344<K, V> {
+    private HashMap<K,V> map1;
+    private HashMap<K,V> map2 = new HashMap<K,V>(), map3;
+    private boolean b = (1 < 3), c;
+    private boolean d = 1 < 3, e;
+}


Modified: tests/ctags/bug1777344.java.tags
10 files changed, 10 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,10 @@
+# format=tagmanager
+V�128�()�bug1777344�0�
+b�8�bug1777344�0�boolean
+bug1777344�1�0
+c�8�bug1777344�0�boolean
+d�8�bug1777344�0�boolean
+e�8�bug1777344�0�boolean
+map1�8�bug1777344�0�HashMap
+map2�8�bug1777344�0�HashMap
+map3�8�bug1777344�0�HashMap


Modified: tests/ctags/bug1799340.cpp
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+std::string & f1() {}
+const std::string & f2() {}
+std::string const & f3() {}


Modified: tests/ctags/bug1799340.cpp.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+f1�16�()�0�std
+f2�16�()�0�const std
+f3�16�()�std�0�std const


Modified: tests/ctags/bug1799343-1.cpp
10 files changed, 10 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,10 @@
+#include <iostream>
+struct C { int x; };
+struct D : ::C {
+ D() { x = 123; }
+ ~D() { std::cout << x << std::endl; }
+};
+int main(void) {
+ D d;
+ return 0;
+}


Modified: tests/ctags/bug1799343-1.cpp.tags
6 files changed, 6 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,6 @@
+# format=tagmanager
+C�2048�0
+D�16�()�0
+main�16�(void)�0�int
+x�64�C�0�int
+~D�16�()�0


Modified: tests/ctags/bug1799343-2.cpp
27 files changed, 27 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,27 @@
+class P {
+  protected:
+   int x;
+};
+
+namespace A {
+   class P {
+  protected:
+     int x;
+   };
+   class Q {
+     int y;
+   };
+
+   namespace C {
+     class R: ::P, A::Q {
+       int z;
+       int f (int v) { return v + x; }
+     };
+   }
+}
+
+namespace B {
+   class S : A::C::R {
+     int t;
+   };
+}


Modified: tests/ctags/bug1799343-2.cpp.tags
14 files changed, 14 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,14 @@
+# format=tagmanager
+A�256�0
+B�256�0
+C�256�0
+P�1�0
+P�1�A�0
+Q�1�A�0
+S�1�B�0
+f�16�(int v)�A::C::<anonymous>�0�int
+t�64�B::S�0�int
+x�64�A::P�0�int
+x�64�P�0�int
+y�64�A::Q�0�int
+z�64�A::C::<anonymous>�0�int


Modified: tests/ctags/bug1800065.cs
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+using Gtk;
+public class C {
+ private Gtk.Window window;
+ private string title;
+}


Modified: tests/ctags/bug1800065.cs.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+C�1�0
+title�8�C�0
+window�8�C�0�Gtk


Modified: tests/ctags/bug1809024.py
10 files changed, 10 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,10 @@
+   def detach (self):
+
+        model = self.view.props.model
+        sort_id, sort_order = tree_sortable_get_sort_column_id (model)
+        if sort_id >= 0:
+            self.app.state.sort_column = self.find_item_class (id = sort_id)
+            if sort_order == gtk.SORT_ASCENDING:
+                self.app.state.sort_order = "ascending"
+            else:
+                self.app.state.sort_order = "descending"


Modified: tests/ctags/bug1809024.py.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+detach�16�(self)�0


Modified: tests/ctags/bug1830343.cs
8 files changed, 8 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,8 @@
+class ForEachTest {
+	static void Main(string[] args) {
+		int[] fibarray = new int[] { 0, 1, 2, 3, 5, 8, 13 };
+		foreach (int i in fibarray) {
+			System.Console.WriteLine(i);
+		}
+	}
+}


Modified: tests/ctags/bug1830343.cs.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+ForEachTest�1�0
+Main�128�(string[] args)�ForEachTest�0�void


Modified: tests/ctags/bug1830344.cs
10 files changed, 10 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,10 @@
+public class C {
+	public void m() {
+		bool flagCheck = true;
+		if (flagCheck == true) {
+			Console.WriteLine("true");
+		} else {
+			Console.WriteLine("false");
+		}
+	}
+}


Modified: tests/ctags/bug1830344.cs.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+C�1�0
+m�128�()�C�0�public void


Modified: tests/ctags/bug1856363.py
9 files changed, 9 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,9 @@
+#!/usr/bin/python
+
+def main():
+	# A broken ctags will see a function "initely_not_a_function" here.
+	definitely_not_a_function = 0
+	return
+
+if __name__ == 'main':
+	main()


Modified: tests/ctags/bug1856363.py.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+main�16�()�0


Modified: tests/ctags/bug1906062.py
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+include_file = '''
+class (b)
+'''
+
+# dummy class to generate a tag
+class dummy:
+    pass


Modified: tests/ctags/bug1906062.py.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+dummy�1�0


Modified: tests/ctags/bug1907083.cpp
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+// All of these should have "class:C", but m2-m4 have "class C::C" with ctags 5.7.
+C::T * C::m1() {}
+C::T * const C::m2() {}
+C::T const * C::m3() {}
+C::T const * const C::m4() {}


Modified: tests/ctags/bug1907083.cpp.tags
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+# format=tagmanager
+m1�16�()�C::C�0�C *C
+m2�16�()�C::C�0�C *const C
+m3�16�()�C::C�0�C const *C
+m4�16�()�C::C�0�C const *const C


Modified: tests/ctags/bug1924919.cpp
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+#include <string>
+namespace mud {
+	std::string MajorVersion;
+	std::string MinorVersion;
+};


Modified: tests/ctags/bug1924919.cpp.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+MajorVersion�64�mud�0�std
+MinorVersion�64�mud�0�std
+mud�256�0


Modified: tests/ctags/bug1938565.sql
18 files changed, 18 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,18 @@
+CREATE OR REPLACE PACKAGE demo_pkg
+IS
+
+FUNCTION func1_proto( value in varchar ) RETURNS number;
+FUNCTION func2_proto( value in varchar ) RETURN number;
+
+FUNCTION func1( value in varchar ) RETURNS number IS
+BEGIN
+	RETURN 1;
+END func1;
+
+FUNCTION func2( value in varchar ) RETURN number IS
+BEGIN
+	RETURN 2;
+END func2;
+
+END demo_pkg;
+/


Modified: tests/ctags/bug1938565.sql.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+demo_pkg�512�0
+func1�16�0
+func2�16�0


Modified: tests/ctags/bug1944150.sql
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+CREATE TRIGGER [tr_d_cash_trade_comment] ON dbo.cash_trade_comment
+FOR DELETE
+AS
+BEGIN
+END
+GO
+


Modified: tests/ctags/bug1944150.sql.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+cash_trade_comment.�65536�0


Modified: tests/ctags/bug1950327.js
41 files changed, 41 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,41 @@
+// I've attached the simple test case as bugDemo.js. Trigger the bug by
+// uncommenting line 8. Attached are tags files with line 21 commented/not
+// commented. This is the current tip, svn r663.
+//
+// When the container.dirtyTab line is uncommented you see these methods:
+//     TabChrome.createTabTile
+//     TabChrome.init
+//
+// When the container.dirtyTab line is commented you see these methods:
+//     TabChrome.createTabTile
+//     TabChrome.destroyTabTile
+//     TabChrome.init
+//
+TabChrome.prototype = {
+	init: function() 
+	{
+		this.browserMap = new Object();
+	},
+	createTabTile: function(browser) 
+	{
+		//container.dirtyTab = {'url': false, 'title':false, 'snapshot':false, '*': false}		
+		return container;
+	},
+	destroyTabTile: function(tile)
+	{
+	}
+}
+Different.prototype = {
+	init: function() 
+	{
+		this.browserMap = new Object();
+	},
+	createTabTile: function(browser) 
+	{
+		container.dirtyTab = {'url': false, 'title':false, 'snapshot':false, '*': false}		
+		return container;
+	},
+	destroyTabTile: function(tile)
+	{
+	}
+}


Modified: tests/ctags/bug1950327.js.tags
14 files changed, 14 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,14 @@
+# format=tagmanager
+*�64�container.dirtyTab�0
+Different�1�0
+TabChrome�1�0
+createTabTile�128�Different�0
+createTabTile�128�TabChrome�0
+destroyTabTile�128�Different�0
+destroyTabTile�128�TabChrome�0
+dirtyTab�1�container�0
+init�128�Different�0
+init�128�TabChrome�0
+snapshot�64�container.dirtyTab�0
+title�64�container.dirtyTab�0
+url�64�container.dirtyTab�0


Modified: tests/ctags/bug1988026.py
9 files changed, 9 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,9 @@
+
+class testClass:
+    my_var = 0
+    def main():
+        pass
+
+if __name__ == '__main__': testClass.main()
+	def im_a_function():
+	    pass


Modified: tests/ctags/bug1988026.py.tags
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+# format=tagmanager
+im_a_function�16�()�0
+main�128�()�testClass�0
+my_var�16384�testClass�0
+testClass�1�0


Modified: tests/ctags/bug1988027.py
14 files changed, 14 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,14 @@
+#!/usr/bin/env python
+# encoding: utf-8
+
+
+"""
+bla
+#"""
+
+"""make a tarball with all the sources in it; return (distdirname, tarballname)"""
+
+
+# dummy class to generate a tag
+class dummy:
+    pass


Modified: tests/ctags/bug1988027.py.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+dummy�1�0


Modified: tests/ctags/bug1988130.py
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+def testFunc():
+    print 'The following works now' + '"""'
+
+def main():
+    print 'nothing'
+    print 'This is another quoted triple string: """.'
+    return 0


Modified: tests/ctags/bug1988130.py.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+main�16�()�0
+testFunc�16�()�0


Modified: tests/ctags/bug2049723.java
6 files changed, 6 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,6 @@
+import javax.annotation.Nonnull;
+
+public class bug2049723 {
+  public void m1(String arg) {}
+  public void m2(@Nonnull String arg) {}
+}


Modified: tests/ctags/bug2049723.java.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+bug2049723�1�0
+m1�128�(String arg)�bug2049723�0�public void
+m2�128�(@Nonnull String arg)�bug2049723�0�public void


Modified: tests/ctags/bug2075402.py
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+y = 1 # """
+x = 2


Modified: tests/ctags/bug2075402.py.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+x�16384�0
+y�16384�0


Modified: tests/ctags/bug2117073.java
12 files changed, 12 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,12 @@
+public class AAssignmentExp {
+  public AAssignmentExp(@SuppressWarnings("hiding") TAssign _token_,
+                        @SuppressWarnings("hiding") PLvalue _lvalue_,
+                        @SuppressWarnings("hiding") PExp _exp_) {
+    setToken(_token_);
+    setLvalue(_lvalue_);
+    setExp(_exp_);
+  }
+
+  @Override void removeChild(@SuppressWarnings("unused") Node child) {
+  }
+}


Modified: tests/ctags/bug2117073.java.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+AAssignmentExp�1�0
+AAssignmentExp�128�(@SuppressWarnings() TAssign _token_, @SuppressWarnings() PLvalue _lvalue_, @SuppressWarnings() PExp _exp_)�AAssignmentExp�0
+removeChild�128�(@SuppressWarnings() Node child)�AAssignmentExp�0�@Override void


Modified: tests/ctags/bug2374109.vhd
9 files changed, 9 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,9 @@
+function Pow2( N, Exp : integer )  return mylib.myinteger is
+  Variable Result   : integer := 1;
+
+begin
+  for i in 1 to Exp loop
+    Result := Result * N;
+  end loop;
+  return( Result );
+end Pow;


Modified: tests/ctags/bug2374109.vhd.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+Pow2�16�0
+Result�16384�0


Modified: tests/ctags/bug2411878.cs
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+public class C {
+  private System.String m_name;
+}


Modified: tests/ctags/bug2411878.cs.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+C�1�0
+m_name�8�C�0�System


Modified: tests/ctags/bug2747828.v
1 files changed, 1 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1 @@
+parameter ramaddr_0 = {1'b1,9'd0};


Modified: tests/ctags/bug2747828.v.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+9�16384�0
+ramaddr_0�16384�0


Modified: tests/ctags/bug2777310.js
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+var x = 1;
+var z = {};
+var y = [];
+


Modified: tests/ctags/bug2777310.js.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+x�16384�0
+y�16384�0
+z�16384�0


Modified: tests/ctags/bug2781264.rb
12 files changed, 12 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,12 @@
+
+class Foo
+  def foo
+    File.open("foo", "r") do |infile|
+      infile.readline
+    end
+  end
+
+  def bar
+    print "bar"
+  end
+end


Modified: tests/ctags/bug2781264.rb.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+Foo�1�0
+bar�128�Foo�0
+foo�128�Foo�0


Modified: tests/ctags/bug2886870.tex
351 files changed, 351 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,351 @@
+Sample LaTeX file
+The name of this file is intro.tex.
+
+\documentclass[12pt]{article}
+
+\usepackage{amsmath}    % need for subequations
+\usepackage{graphicx}   % need for figures
+\usepackage{verbatim}   % useful for program listings
+\usepackage{color}      % use if color is used in text
+\usepackage{subfigure}  % use for side-by-side figures
+\usepackage{hyperref}   % use for hypertext links, including those to external documents and URLs
+
+% don't need the following. simply use defaults
+\setlength{\baselineskip}{16.0pt}    % 16 pt usual spacing between lines
+
+\setlength{\parskip}{3pt plus 2pt}
+\setlength{\parindent}{20pt}
+\setlength{\oddsidemargin}{0.5cm}
+\setlength{\evensidemargin}{0.5cm}
+\setlength{\marginparsep}{0.75cm}
+\setlength{\marginparwidth}{2.5cm}
+\setlength{\marginparpush}{1.0cm}
+\setlength{\textwidth}{150mm}
+
+\begin{comment}
+\pagestyle{empty} % use if page numbers not wanted
+\end{comment}
+
+% above is the preamble
+
+\begin{document}
+
+\begin{center}
+{\large Introduction to \LaTeX} \\ % \\ = new line
+\copyright 2006 by Harvey Gould \\
+December 5, 2006
+\end{center}
+
+\section{Introduction}
+\TeX\ looks more difficult than it is. It is
+almost as easy as $\pi$. See how easy it is to make special
+symbols such as $\alpha$,
+$\beta$, $\gamma$,
+$\delta$, $\sin x$, $\hbar$, $\lambda$, $\ldots$ We also can make
+subscripts
+$A_{x}$, $A_{xy}$ and superscripts, $e^x$, $e^{x^2}$, and
+$e^{a^b}$. We will use \LaTeX, which is based on \TeX\ and has
+many higher-level commands (macros) for formatting, making
+tables, etc. More information can be found in Ref.~\cite{latex}.
+
+We just made a new paragraph. Extra lines and spaces make no
+difference. Note that all formulas are enclosed by
+\$ and occur in \textit{math mode}.
+
+The default font is Computer Modern. It includes \textit{italics},
+\textbf{boldface},
+\textsl{slanted}, and \texttt{monospaced} fonts.
+
+\section{Equations}
+Let us see how easy it is to write equations.
+\begin{equation}
+\Delta =\sum_{i=1}^N w_i (x_i - \bar{x})^2 .
+\end{equation}
+It is a good idea to number equations, but we can have a
+equation without a number by writing
+\begin{equation}
+P(x) = \frac{x - a}{b - a} , \nonumber
+\end{equation}
+and
+\begin{equation}
+g = \frac{1}{2} \sqrt{2\pi} . \nonumber
+\end{equation}
+
+We can give an equation a label so that we can refer to it later.
+\begin{equation}
+\label{eq:ising}
+E = -J \sum_{i=1}^N s_i s_{i+1} ,
+\end{equation}
+Equation~\eqref{eq:ising} expresses the energy of a configuration
+of spins in the Ising model.\footnote{It is necessary to process (typeset) a
+file twice to get the counters correct.}
+
+We can define our own macros to save typing. For example, suppose
+that we introduce the macros:
+\begin{verbatim}
+ \newcommand{\lb}{{\langle}}
+ \newcommand{\rb}{{\rangle}}
+\end{verbatim}
+\newcommand{\lb}{{\langle}}
+\newcommand{\rb}{{\rangle}}
+Then we can write the average value of $x$ as
+\begin{verbatim}
+\begin{equation}
+\lb x \rb = 3
+\end{equation}
+\end{verbatim}
+The result is
+\begin{equation}
+\lb x \rb = 3 .
+\end{equation}
+
+Examples of more complicated equations:
+\begin{equation}
+I = \! \int_{-\infty}^\infty f(x)\,dx \label{eq:fine}.
+\end{equation}
+We can do some fine tuning by adding small amounts of horizontal
+spacing:
+\begin{verbatim}
+ \, small space       \! negative space
+\end{verbatim}
+as is done in Eq.~\eqref{eq:fine}.
+
+We also can align several equations:
+\begin{align}
+a & = b \\
+c &= d ,
+\end{align}
+or number them as subequations:
+\begin{subequations}
+\begin{align}
+a & = b \\
+c &= d .
+\end{align}
+\end{subequations}
+
+We can also have different cases:
+\begin{equation}
+\label{eq:mdiv}
+m(T) =
+\begin{cases}
+0 & \text{$T > T_c$} \\
+\bigl(1 - [\sinh 2 \beta J]^{-4} \bigr)^{\! 1/8} & \text{$T < T_c$}
+\end{cases}
+\end{equation}
+write matrices
+\begin{align}
+\textbf{T} &=
+\begin{pmatrix}
+T_{++} \hfill & T_{+-} \\
+T_{-+} & T_{--} \hfill 
+\end{pmatrix} , \nonumber \\
+& =
+\begin{pmatrix}
+e^{\beta (J + B)} \hfill & e^{-\beta J} \hfill \\
+e^{-\beta J} \hfill & e^{\beta (J - B)} \hfill
+\end{pmatrix}.
+\end{align}
+and 
+\newcommand{\rv}{\textbf{r}}
+\begin{equation}
+\sum_i \vec A \cdot \vec B = -P\!\int\! \rv \cdot
+\hat{\mathbf{n}}\, dA = P\!\int \! {\vec \nabla} \cdot \rv\, dV.
+\end{equation}
+
+\section{Tables}
+Tables are a little more difficult. TeX
+automatically calculates the width of the columns.
+
+\begin{table}[h]
+\begin{center}
+\begin{tabular}{|l|l|r|l|}
+\hline
+lattice & $d$ & $q$ & $T_{\rm mf}/T_c$ \\
+\hline
+square & 2 & 4 & 1.763 \\
+\hline
+triangular & 2 & 6 & 1.648 \\
+\hline
+diamond & 3 & 4 & 1.479 \\
+\hline
+simple cubic & 3 & 6 & 1.330 \\
+\hline
+bcc & 3 & 8 & 1.260 \\
+\hline
+fcc & 3 & 12 & 1.225 \\
+\hline
+\end{tabular}
+\caption{\label{tab:5/tc}Comparison of the mean-field predictions
+for the critical temperature of the Ising model with exact results
+and the best known estimates for different spatial dimensions $d$
+and lattice symmetries.}
+\end{center}
+\end{table}
+
+\section{Lists}
+
+Some example of formatted lists include the
+following:
+
+\begin{enumerate}
+
+\item bread
+
+\item cheese
+
+\end{enumerate}
+
+\begin{itemize}
+
+\item Tom
+
+\item Dick
+
+\end{itemize}
+
+\section{Figures}
+
+We can make figures bigger or smaller by scaling them. Figure~\ref{fig:lj}
+has been scaled by 60\%.
+
+\begin{figure}[h]
+\begin{center}
+\includegraphics{figures/sine}
+\caption{\label{fig:typical}Show me a sine.}
+\end{center}
+\end{figure}
+
+\begin{figure}[h]
+\begin{center}
+\scalebox{0.6}{\includegraphics{figures/lj}}
+\caption{\label{fig:lj}Plot of the
+Lennard-Jones potential
+$u(r)$. The potential is characterized by a length
+$\sigma$ and an energy
+$\epsilon$.}
+\end{center}
+\end{figure}
+
+\section{Literal text}
+It is desirable to print program code exactly as it is typed in a
+monospaced font. Use \verb \begin{verbatim} and
+\verb \end{verbatim} as in the following example:
+\begin{verbatim}
+double y0 = 10; // example of declaration and assignment statement
+double v0 = 0;  // initial velocity
+double t = 0;   // time
+double dt = 0.01; // time step
+double y = y0;
+\end{verbatim}
+The command \verb \verbatiminput{programs/Square.java}\ allows
+you to list the file \texttt{Square.java} in the directory
+programs.
+
+\section{Special Symbols}
+
+\subsection{Common Greek letters}
+
+These commands may be used only in math mode. Only the most common
+letters are included here.
+
+$\alpha, 
+\beta, \gamma, \Gamma,
+\delta,\Delta,
+\epsilon, \zeta, \eta, \theta, \Theta, \kappa,
+\lambda, \Lambda, \mu, \nu,
+\xi, \Xi,
+\pi, \Pi,
+\rho,
+\sigma, 
+\tau,
+\phi, \Phi,
+\chi,
+\psi, \Psi,
+\omega, \Omega$
+\subsubsection{Test for ctags}
+\subsection{Special symbols}
+
+The derivative is defined as
+\begin{equation}
+\frac{dy}{dx} = \lim_{\Delta x \to 0} \frac{\Delta y}
+{\Delta x}
+\end{equation}
+\begin{equation}
+f(x) \to y \quad \mbox{as} \quad x \to
+x_{0}
+\end{equation}
+\begin{equation}
+f(x) \mathop {\longrightarrow}
+\limits_{x \to x_0} y
+\end{equation}
+
+\noindent Order of magnitude:
+\begin{equation}
+\log_{10}f \simeq n
+\end{equation}
+\begin{equation}
+f(x)\sim 10^{n}
+\end{equation}
+Approximate equality:
+\begin{equation}
+f(x)\simeq g(x)
+\end{equation}
+\LaTeX\ is simple if we keep everything in proportion:
+\begin{equation}
+f(x) \propto x^3 .
+\end{equation}
+
+Finally we can skip some space by using commands such as
+\begin{verbatim}
+\bigskip    \medskip    \smallskip    \vspace{1pc}
+\end{verbatim}
+The space can be negative.
+
+\section{\color{red}Use of Color}
+
+{\color{blue}{We can change colors for emphasis}},
+{\color{green}{but}} {\color{cyan}{who is going pay for the ink?}}
+
+\section{\label{morefig}Subfigures}
+
+As soon as many students start becoming comfortable using \LaTeX, they want
+to use some of its advanced features. So we now show how to place two
+figures side by side.
+
+\begin{figure}[h!]
+\begin{center}
+\subfigure[Real and imaginary.]{
+\includegraphics[scale=0.5]{figures/reim}}
+\subfigure[Amplitude and phase.]{
+\includegraphics[scale=0.5]{figures/phase}}
+\caption{\label{fig:qm/complexfunctions} Two representations of complex
+wave functions.}
+\end{center}
+\end{figure}
+
+We first have to include the necessary package,
+\verb+\usepackage{subfigure}+, which has to go in the preamble (before
+\verb+\begin{document}+). It sometimes can be difficult to place a figure in
+the desired place.
+
+Your LaTeX document can be easily modified to make a poster or a screen
+presentation similar to (and better than) PowerPoint. Conversion to HTML is
+straightforward. Comments on this tutorial are appreciated.
+
+\begin{thebibliography}{5}
+
+\bibitem{latex}Helmut Kopka and Patrick W. Daly, \textsl{A Guide to
+\LaTeX: Document Preparation for Beginners and Advanced Users},
+fourth edition, Addison-Wesley (2004).
+
+\bibitem{website}Some useful links are
+given at \url{}.
+
+\end{thebibliography}
+
+{\small \noindent Updated 5 December 2006.}
+\end{document}
+
+Updated 6 February 2006. 
+
+


Modified: tests/ctags/bug2886870.tex.tags
39 files changed, 39 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,39 @@
+# format=tagmanager
+Common Greek letters�65536�0
+Equations�64�0
+Figures�64�0
+Introduction�64�0
+Lists�64�0
+Literal text�64�0
+Special Symbols�64�0
+Special symbols�65536�0
+Tables�64�0
+Test for ctags�16384�0
+\color{red�64�0
+\label{morefig�64�0
+align�1�0
+cases�1�0
+center�1�0
+comment�1�0
+document�1�0
+enumerate�1�0
+eq:fine�2048�0
+eq:ising�2048�0
+eq:mdiv�2048�0
+equation�1�0
+fig:lj�2048�0
+fig:qm/complexfunctions�2048�0
+fig:typical�2048�0
+figure�1�0
+itemize�1�0
+lb�16�0
+morefig�2048�0
+pmatrix�1�0
+rb�16�0
+rv�16�0
+subequations�1�0
+tab:5/tc�2048�0
+table�1�0
+tabular�1�0
+thebibliography�1�0
+verbatim�1�0


Modified: tests/ctags/bug2888482.js
12 files changed, 12 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,12 @@
+function scrollEditBox() {
+	var editBoxEl = document.getElementById("wpTextbox1");
+	var scrollTopEl = document.getElementById("wpScrolltop");
+	var editFormEl = document.getElementById("editform");
+
+	if (editBoxEl && scrollTopEl) {
+		if (scrollTopEl.value) editBoxEl.scrollTop = scrollTopEl.value;
+		editFormEl.onsubmit = function() {
+			document.getElementById("wpScrolltop").value = document.getElementById("wpTextbox1").scrollTop;
+		}
+	}
+}


Modified: tests/ctags/bug2888482.js.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+onsubmit�16�editFormEl�0
+scrollEditBox�16�0


Modified: tests/ctags/bug3036476.js
20 files changed, 20 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,20 @@
+/*
+ * "Lowercase "object" isn't a keyword"
+ * 
+ * ctags -f - bug3036476.js should output:
+ * 
+ * variables:
+ *    container
+ * 
+ * functions:
+ *    container.object
+ *    container.object.method1
+ *    container.object.method2
+ */
+
+var container = {};
+
+container.object = function() {}
+container.object.method1 = function() {}
+container.object.method2 = function() {}
+


Modified: tests/ctags/bug3036476.js.tags
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,5 @@
+# format=tagmanager
+container�16384�0
+method1�16�container.object�0
+method2�16�container.object�0
+object�16�container�0


Modified: tests/ctags/bug3168705.py
9 files changed, 9 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,9 @@
+class A:
+    def func1():
+        """this is
+a comment"""
+        pass
+
+    def func2():
+        pass
+


Modified: tests/ctags/bug3168705.py.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+A�1�0
+func1�128�()�A�0
+func2�128�()�A�0


Modified: tests/ctags/bug3571233.js
56 files changed, 56 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,56 @@
+/*
+ * "Functions nested inside methods show improper scope with the parent method
+ * being reported as "function""
+ * 
+ * ctags -f - bug3571233.js should output:
+ * 
+ * classes
+ *    MyClass
+ * 
+ * methods
+ *    MyClass.method2
+ * 
+ * functions
+ *    MyClass.method2.nestedFunction1
+ *    MyClass.method2.nestedFunction2
+ *    function1
+ *    function1.nestedFunction3
+ *    function2
+ *    function2.nestedFunction4
+ *    function2.nestedFunction5
+ * 
+ * 
+ * Note that MyClass is shown both as a class and as a function (the parser
+ * discovers it actually is a class only later on).  This isn't really easy to
+ * fix because a JavaScript function is only a class if it happen to be used as
+ * one, for example it has prototypes.
+ */
+
+function MyClass() {
+}
+
+MyClass.prototype.method2 = function() {
+  // these functions have improper scope
+  function nestedFunction1() {
+    
+  }
+  
+  function nestedFunction2() {
+    
+  }
+};
+
+// following work fine, just here as a reference
+function function1() {
+  function nestedFunction3() {
+  }
+};
+
+function2 = function() {
+  function nestedFunction4() {
+  }
+  
+  function nestedFunction5() {
+  }
+};
+


Modified: tests/ctags/bug3571233.js.tags
11 files changed, 11 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,11 @@
+# format=tagmanager
+MyClass�1�0
+MyClass�16�0
+function1�16�0
+function2�16�0
+method2�128�MyClass�0
+nestedFunction1�16�MyClass.method2�0
+nestedFunction2�16�MyClass.method2�0
+nestedFunction3�16�function1�0
+nestedFunction4�16�function2�0
+nestedFunction5�16�function2�0


Modified: tests/ctags/bug507864.c
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+FUNCSTS func1(ENTSEQNO(seq)) {}
+FUNCSTS func2 (MEMTXT(form_msg), MEMTXT (text), MEMTXT (mail)) {}


Modified: tests/ctags/bug507864.c.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+ENTSEQNO�16�(seq)�0�FUNCSTS
+MEMTXT�16�(form_msg)�0�
+MEMTXT�1024�(form_msg)�0�


Modified: tests/ctags/bug538629.asm
1 files changed, 1 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1 @@
+	MYMACRO EQU 01234h


Modified: tests/ctags/bug538629.asm.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+MYMACRO�65536�0


Modified: tests/ctags/bug556645.c
39 files changed, 39 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,39 @@
+/*
+From noreply at sourceforge.net Wed May 29 23:11:25 2002
+Date: Wed, 15 May 2002 23:25:52 -0700
+From: noreply at sourceforge.net
+To: noreply at sourceforge.net
+Subject: [ ctags-Bugs-556645 ] Some typedef can not be tagged in C code
+
+Bugs item #556645, was opened at 2002-05-16 14:25
+You can respond by visiting: 
+http://sourceforge.net/tracker/?func=detail&atid=106556&aid=556645&group_id=6556
+
+Category: None
+Group: None
+Status: Open
+Resolution: None
+Priority: 5
+Submitted By: Howard Wu (howardhbwu)
+Assigned to: Nobody/Anonymous (nobody)
+Summary: Some typedef can not be tagged in C code
+
+Initial Comment:
+My Ctags version:5.2.3
+
+The typedef of "Qtype" as the following,
+
+*/
+#define A1(_type, _length)                  \
+struct  {                                   \
+    	    unsigned int    head;           \
+    	    unsigned int    tail;           \
+    	    bool            is_full;        \
+    	    _type           queue[_length]; \
+	}
+
+typedef A1(ilm_struct, 1) Qtype;
+
+/*
+As using ctags, the "Qtype" can not be tagged by it.
+*/


Modified: tests/ctags/bug556645.c.tags
2 files changed, 2 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,2 @@
+# format=tagmanager
+A1�131072�(_type, _length)�0


Modified: tests/ctags/bug556646.c
42 files changed, 42 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,42 @@
+/*
+Bugs item #556646, was opened at 2002-05-16 14:36
+You can respond by visiting: 
+http://sourceforge.net/tracker/?func=detail&atid=106556&aid=556646&group_id=6556
+
+Category: None
+Group: None
+Status: Open
+Resolution: None
+Priority: 5
+Submitted By: Howard Wu (howardhbwu)
+Assigned to: Nobody/Anonymous (nobody)
+Summary: Some typedef can not be tagged in C code
+
+Initial Comment:
+My Ctags version: 5.2.3
+*/
+typedef enum{
+  INDX_NIL =   0x00,
+  INDX_P,
+  INDX_S,
+  INDX_M,
+  INDX_S1,
+  INDX_S2,
+  INDX_S3,
+  INDX_C1,
+  INDX_C2,
+  INDX_S4,
+  INDX_T,
+  INDX_L,
+  INDX_R,
+  INDX_R2,
+  INDX_IM1,
+  INDX_IM2,
+  INDX_L2,
+  INDX_T2,
+  A = INDX_T2
+} task_indx_type;
+
+/*
+"task_indx_type" can not be tagged with Ctags
+*/


Modified: tests/ctags/bug556646.c.tags
22 files changed, 22 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,22 @@
+# format=tagmanager
+A�4�anon_enum_0�0
+INDX_C1�4�anon_enum_0�0
+INDX_C2�4�anon_enum_0�0
+INDX_IM1�4�anon_enum_0�0
+INDX_IM2�4�anon_enum_0�0
+INDX_L�4�anon_enum_0�0
+INDX_L2�4�anon_enum_0�0
+INDX_M�4�anon_enum_0�0
+INDX_NIL�4�anon_enum_0�0
+INDX_P�4�anon_enum_0�0
+INDX_R�4�anon_enum_0�0
+INDX_R2�4�anon_enum_0�0
+INDX_S�4�anon_enum_0�0
+INDX_S1�4�anon_enum_0�0
+INDX_S2�4�anon_enum_0�0
+INDX_S3�4�anon_enum_0�0
+INDX_S4�4�anon_enum_0�0
+INDX_T�4�anon_enum_0�0
+INDX_T2�4�anon_enum_0�0
+anon_enum_0�2�0
+task_indx_type�4096�0�anon_enum_0


Modified: tests/ctags/bug565813.f90
42 files changed, 42 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,42 @@
+module ctags_bug
+
+    implicit none
+    private
+    save
+
+    type :: foo_t
+        integer :: bar
+    end type foo_t
+
+    integer, parameter :: N = 1000
+
+    public :: foo_t
+    public :: foo_setbar
+    public :: foo_set_bar
+    public :: foo_getbar
+
+contains
+
+    subroutine foo_setbar (f,b)
+        type(foo_t), intent(out) :: f
+        integer, intent(in) :: b
+
+        f%bar = b
+    end subroutine foo_setbar
+
+
+    pure subroutine foo_set_bar (f,b)
+        type(foo_t), intent(out) :: f
+        integer, intent(in) :: b
+
+        f%bar = b
+    end subroutine foo_set_bar
+
+
+    integer function foo_getbar (f)
+        type(foo_t), intent(in) :: f
+
+        foo_getbar = f%bar
+    end function foo_getbar
+
+end module ctags_bug


Modified: tests/ctags/bug565813.f90.tags
7 files changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,7 @@
+# format=tagmanager
+N�16384�ctags_bug�0
+ctags_bug�256�0
+foo_getbar�16�ctags_bug�0
+foo_set_bar�64�ctags_bug�0
+foo_setbar�64�ctags_bug�0
+foo_t�4096�ctags_bug�0


Modified: tests/ctags/bug612019.pas
33 files changed, 33 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,33 @@
+(*
+Bugs item #612019, was opened at 2002-09-20 15:29
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=612019&group_id=6556
+
+Category: None
+Group: None
+Status: Open
+Resolution: None
+Priority: 5
+Submitted By: Konstantin Stupnik (xecutor)
+Assigned to: Nobody/Anonymous (nobody)
+Summary: pascal parser
+
+Initial Comment:
+In attached sample there are some lines from tags file
+generated for object pascal sources.
+There are some problems with this lines.
+Generaly speaking they are parsed incorrectly.
+*)
+unit a;
+
+interface
+type
+  TTest=class
+    procedure Test1;
+    procedure  Test2;
+    procedure   Test3;
+  end;
+
+implementation
+
+end.


Modified: tests/ctags/bug612019.pas.tags
4 files changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+# format=tagmanager
+TTest�16�()�0
+Test2�16�()�0
+Test3�16�()�0


Modified: tests/ctags/bug612621.pl
57 files changed, 57 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,57 @@
+=pod
+Bugs item #612621, was opened at 2002-09-21 21:23
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=612621&group_id=6556
+
+Category: None
+Group: None
+Status: Open
+Resolution: None
+Priority: 5
+Submitted By: Richard Donkin (rdonkin)
+Assigned to: Nobody/Anonymous (nobody)
+Summary: Perl POD syntax -> incomplete tags file
+
+Initial Comment:
+In the following test file, ctags 5.2.3 (compiled from 
+source on Cygwin) only adds the first subroutine (bar) to 
+the tags file, when run using:
+
+ctags --totals --
+language-force=perl temp
+
+-----------------
+=cut
+sub bar() 
+{
+
+    print "blah\n";
+
+=for
+    print "blah2\n";
+    # 
+Note: next line has trailing space
+=cut 
+
+
+}
+
+sub foo {
+    print "hello\n";
+}
+=pod
+The 
+tags file looks like 
+this:
+!_TAG_FILE_FORMAT	2	/extended format; -- format=1 will not append ;" to lines/
+!_TAG_FILE_SORTED	1	/0=unsorted, 1=sorted/
+!_TAG_PROGRAM_AUTHOR	Darren Hiebert	/dhiebert at users.sourceforge.net/
+!_TAG_PROGRAM_NAME	Exuberant Ctags	//
+!_TAG_PROGRAM_URL	http://ctags.sourceforge.net	/official site/
+!_TAG_PROGRAM_VERSION	5.2.3	//
+bar	temp	/^sub bar() {$/;"	s
+
+The workaround is to delete the 
+trailing space at the end of the '=cut' line.
+
+=cut


Modified: tests/ctags/bug612621.pl.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+bar�16�0
+foo�16�0


Modified: tests/ctags/bug620288.f
98 files changed, 98 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,98 @@
+C Bugs item #620288, was opened at 2002-10-08 08:15
+C You can respond by visiting: 
+C https://sourceforge.net/tracker/?func=detail&atid=106556&aid=620288&group_id=6556
+C 
+C Category: None
+C Group: None
+C Status: Open
+C Resolution: None
+C Priority: 5
+C Submitted By: Nobody/Anonymous (nobody)
+C Assigned to: Nobody/Anonymous (nobody)
+C Summary: fortran function definition
+C 
+C Initial Comment:
+C 
+C System Information:
+C --------------
+C ctags version: 
+C Exuberant Ctags 5.3.1, Copyright (C) 1996-2002 Darren 
+C Hiebert
+C   Compiled: Sep 12 2002, 10:22:42
+C   Addresses: <dhiebert at users.sourceforge.net>, 
+C http://ctags.sourceforge.net
+C   Optional compiled features: +wildcards, +regex
+C 
+C Unix:
+C HP-UX B.11.00 A 9000/800 551726527
+C --------------
+C 
+C Symptoms:
+C --------------
+C I have a fortran file that has a single function.  This 
+C function has a
+C return type of double precision.  I type $ctags bar.f .  
+C This produces the expected 
+C tags file.  However, tags does not contain the function 
+C definition.
+C 
+C This does not occur when the same function's return 
+C type has been changed to 
+C a integer or character data return type.
+C --------------
+C 
+C 
+C Examples in which I can repeat the experience with their 
+C respective tags files:
+C --------------
+C 
+C 
+C foo.f
+C --------------
+	integer function foo(a)
+
+	integer a
+	foo = a
+	end
+C --------------
+C 
+C 
+C tags
+C --------------
+C !_TAG_FILE_FORMAT	2	/extended 
+C format; --format=1 will not append ;" to lines/
+C !_TAG_FILE_SORTED	1
+C 	/0=unsorted, 1=sorted, 2=foldcase/
+C !_TAG_PROGRAM_AUTHOR	Darren Hiebert
+C 	/dhiebert at users.sourceforge.net/
+C !_TAG_PROGRAM_NAME	Exuberant Ctags	//
+C !_TAG_PROGRAM_URL
+C 	http://ctags.sourceforge.net	/official site/
+C !_TAG_PROGRAM_VERSION	5.3.1	//
+C foo	foo.f	/^	integer function foo(/;"	f
+C --------------
+C 
+C 
+C 
+C bar.f	
+C ---------------
+	double precision function bar(a)
+	
+	double precision a
+	bar = a
+	end
+C --------------	
+C 
+C tags
+C ---------------
+C !_TAG_FILE_FORMAT	2	/extended 
+C format; --format=1 will not append ;" to lines/
+C !_TAG_FILE_SORTED	1
+C 	/0=unsorted, 1=sorted, 2=foldcase/
+C !_TAG_PROGRAM_AUTHOR	Darren Hiebert
+C 	/dhiebert at users.sourceforge.net/
+C !_TAG_PROGRAM_NAME	Exuberant Ctags	//
+C !_TAG_PROGRAM_URL
+C 	http://ctags.sourceforge.net	/official site/
+C !_TAG_PROGRAM_VERSION	5.3.1	//
+C ---------------


Modified: tests/ctags/bug620288.f.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+bar�16�0
+foo�16�0


Modified: tests/ctags/bug639639.h
46 files changed, 46 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,46 @@
+/*
+Date: Sun, 17 Nov 2002 04:41:42 -0800
+Subject: [ ctags-Bugs-639639 ] incorrect enum field for C++ header
+
+Bugs item #639639, was opened at 2002-11-17 13:41
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=639639&group_id=6556
+
+Category: None
+Group: None
+Status: Open
+Resolution: None
+Priority: 5
+Submitted By: Matthias S. Benkmann (mbenkmann)
+Assigned to: Nobody/Anonymous (nobody)
+Summary: incorrect enum field for C++ header
+
+Initial Comment:
+----------- temp2.h -------------
+*/
+namespace Namespace1
+{
+  int function2(char* str);
+}
+
+enum {anon2=1000};
+----------------------------  
+/*
+> ctags --excmd=number --fields=+kKmnsSz
+--file-scope=no -f - temp2.h
+
+Namespace1      temp2.h 1;"     kind:namespace  line:1
+anon2   temp2.h 6;"     kind:enumerator line:6 
+enum:Namespace1
+
+
+As you can see ctags thinks that anon2 belongs to enum
+Namespace1 which it obviously doesn't (Namespace1 is
+not even an enum). It should be enum:<anonymous>.
+
+
+----------------------------------------------------------------------
+
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=639639&group_id=6556
+*/


Modified: tests/ctags/bug639639.h.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+anon2�4�anon_enum_0�0
+anon_enum_0�2�0


Modified: tests/ctags/bug639644.hpp
41 files changed, 41 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,41 @@
+/*
+Date: Sun, 17 Nov 2002 04:57:43 -0800
+Subject: [ ctags-Bugs-639644 ] anonymous namespaces in headers
+
+Bugs item #639644, was opened at 2002-11-17 13:57
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=639644&group_id=6556
+
+Category: None
+Group: None
+Status: Open
+Resolution: None
+Priority: 5
+Submitted By: Matthias S. Benkmann (mbenkmann)
+Assigned to: Nobody/Anonymous (nobody)
+Summary: anonymous namespaces in headers
+
+Initial Comment:
+--------------------temp3.h----------------
+*/
+namespace
+{
+  int foo;
+}
+/*
+---------------------------------------------
+
+> ctags -f - temp3.h
+
+foo     temp3.h /^  int foo;$/;"        m       namespace:
+
+That last field should be "namespace:<anonymous>"
+and the kind field should be variable, not member.
+
+
+
+----------------------------------------------------------------------
+
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=639644&group_id=6556
+*/


Modified: tests/ctags/bug639644.hpp.tags
3 files changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,3 @@
+# format=tagmanager
+anon_namespace_0�256�0
+foo�64�anon_namespace_0�0�int


Modified: tests/ctags/bug665086.cpp
32 files changed, 32 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,32 @@
+/*
+Bugs item #665086, was opened at 2003-01-09 15:30
+You can respond by visiting: 
+https://sourceforge.net/tracker/?func=detail&atid=106556&aid=665086&group_id=6556
+
+Category: None
+Group: N@@ Diff output truncated at 100000 characters. @@

--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).


More information about the Commits mailing list