From mboxrd@z Thu Jan  1 00:00:00 1970
Path: news.gmane.org!not-for-mail
From: Olivier Sirven <the.slaa@gmail.com>
Newsgroups: gmane.emacs.devel
Subject: Re: Patch for PHP5 support for etags
Date: Mon, 19 Mar 2012 09:14:50 +0100
Message-ID: <87mx7dj9c5.fsf@gandalf.home.thebuble.org>
References: <BANLkTik=7WhHUVGtyP1qX78gmcio+omjSw@mail.gmail.com>
	<E1QBRr3-0008P8-OX@tucano.isti.cnr.it>
	<BANLkTinJFfveh8S3X=SZzfOMtwVSOApigg@mail.gmail.com>
	<E1QEhKp-0001oD-R0@tucano.isti.cnr.it>
	<BANLkTi=1DO4ALzYtfAY9j2Q4VKgPNsmhPQ@mail.gmail.com>
	<87obsomsbt.fsf@gandalf.home.thebuble.org>
	<87399jjund.fsf@gandalf.home.thebuble.org>
	<E1S5ijJ-0007bk-JB@tucano.isti.cnr.it>
	<878vj0lc7x.fsf@gandalf.home.thebuble.org>
	<E1S8aZt-0001xP-1P@tucano.isti.cnr.it>
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Trace: dough.gmane.org 1332144920 13160 80.91.229.3 (19 Mar 2012 08:15:20 GMT)
X-Complaints-To: usenet@dough.gmane.org
NNTP-Posting-Date: Mon, 19 Mar 2012 08:15:20 +0000 (UTC)
To: emacs-devel@gnu.org
Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Mar 19 09:15:17 2012
Return-path: <emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org>
Envelope-to: ged-emacs-devel@m.gmane.org
Original-Received: from lists.gnu.org ([208.118.235.17])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org>)
	id 1S9XkL-0006HD-5n
	for ged-emacs-devel@m.gmane.org; Mon, 19 Mar 2012 09:15:17 +0100
Original-Received: from localhost ([::1]:49897 helo=lists.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org>)
	id 1S9XkK-0004Bo-Dn
	for ged-emacs-devel@m.gmane.org; Mon, 19 Mar 2012 04:15:16 -0400
Original-Received: from eggs.gnu.org ([208.118.235.92]:43505)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <ged-emacs-devel@m.gmane.org>) id 1S9XkD-00044I-I4
	for emacs-devel@gnu.org; Mon, 19 Mar 2012 04:15:14 -0400
Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <ged-emacs-devel@m.gmane.org>) id 1S9XkB-00061m-M1
	for emacs-devel@gnu.org; Mon, 19 Mar 2012 04:15:09 -0400
Original-Received: from plane.gmane.org ([80.91.229.3]:44638)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <ged-emacs-devel@m.gmane.org>) id 1S9XkB-00061D-Fz
	for emacs-devel@gnu.org; Mon, 19 Mar 2012 04:15:07 -0400
Original-Received: from list by plane.gmane.org with local (Exim 4.69)
	(envelope-from <ged-emacs-devel@m.gmane.org>) id 1S9Xk8-0006A8-8r
	for emacs-devel@gnu.org; Mon, 19 Mar 2012 09:15:04 +0100
Original-Received: from home.thebuble.org ([88.160.208.28])
	by main.gmane.org with esmtp (Gmexim 0.1 (Debian))
	id 1AlnuQ-0007hv-00
	for <emacs-devel@gnu.org>; Mon, 19 Mar 2012 09:15:04 +0100
Original-Received: from the.slaa by home.thebuble.org with local (Gmexim 0.1 (Debian))
	id 1AlnuQ-0007hv-00
	for <emacs-devel@gnu.org>; Mon, 19 Mar 2012 09:15:04 +0100
X-Injected-Via-Gmane: http://gmane.org/
Original-Lines: 89
Original-X-Complaints-To: usenet@dough.gmane.org
X-Gmane-NNTP-Posting-Host: home.thebuble.org
User-Agent: Gnus/5.130004 (Ma Gnus v0.4) Emacs/24.0.94 (gnu/linux)
Cancel-Lock: sha1:KGPto95zBcqK9+7m98C0Bsikjwg=
X-detected-operating-system: by eggs.gnu.org: Genre and OS details not
	recognized.
X-Received-From: 80.91.229.3
X-BeenThere: emacs-devel@gnu.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: "Emacs development discussions." <emacs-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/emacs-devel>,
	<mailto:emacs-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <http://lists.gnu.org/archive/html/emacs-devel>
List-Post: <mailto:emacs-devel@gnu.org>
List-Help: <mailto:emacs-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/emacs-devel>,
	<mailto:emacs-devel-request@gnu.org?subject=subscribe>
Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org
Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org
Xref: news.gmane.org gmane.emacs.devel:149125
Archived-At: <http://permalink.gmane.org/gmane.emacs.devel/149125>

--=-=-=
Content-Type: text/plain; charset=iso-8859-15
Content-Transfer-Encoding: 8bit

On 2012-03-16 18:04:33, Francesco Potort� wrote:
>>Sp I reapplied the patch and everything went quite smoothly as far as I
>>can see. What is the next step?
>
> Be sure to have applied the patch to the latest trunk version.  Write a
> Changelog entry for your patch.  Submit the patch and changelog entry to
> this list.

There you go

-- 
Oliv

--=-=-=
Content-Type: text/x-diff
Content-Disposition: attachment; filename=etags.patch

=== modified file 'etc/ChangeLog'
--- etc/ChangeLog	2012-03-16 23:20:37 +0000
+++ etc/ChangeLog	2012-03-19 08:11:15 +0000
@@ -1,3 +1,7 @@
+2012-03-19  Olivier Sirven  <the.slaa@gmail.com>
+
+	* lib-src/etags.c: Add support for PHP5 syntax
+
 2012-03-16  Glenn Morris  <rgm@gnu.org>
 
 	* HELLO: Say that this is not a comprehensive list.

=== modified file 'lib-src/etags.c'
--- lib-src/etags.c	2012-01-19 07:21:25 +0000
+++ lib-src/etags.c	2012-03-19 08:05:30 +0000
@@ -4466,6 +4466,39 @@
 		    lb.buffer, cp - lb.buffer + 1, lineno, linecharno);
 	  search_identifier = FALSE;
 	}
+      else if (LOOKING_AT (cp, "public") ||
+	       LOOKING_AT (cp, "private") ||
+	       LOOKING_AT (cp, "protected") ||
+	       LOOKING_AT (cp, "static"))
+	{
+	  cp = skip_spaces (cp);
+	  if (LOOKING_AT (cp, "function"))
+	    {
+	      if(*cp == '&')
+		cp = skip_spaces (cp+1);
+	      if(*cp != '\0')
+		{
+		  name = cp;
+		  while (!notinname (*cp))
+		    cp++;
+		  make_tag (name, cp - name, TRUE,
+			    lb.buffer, cp - lb.buffer + 1, lineno, linecharno);
+		}
+	      else
+		search_identifier = TRUE;
+	    }
+	  else if (members
+		   && *cp == '$')
+	    {
+	      name = cp;
+	      while (!notinname(*cp))
+		cp++;
+	      make_tag (name, cp - name, FALSE,
+			lb.buffer, cp - lb.buffer + 1, lineno, linecharno);
+	    }
+	  else
+	    search_identifier = TRUE;
+	}
       else if (LOOKING_AT (cp, "function"))
 	{
 	  if (*cp == '&')
@@ -4507,7 +4540,8 @@
 		    lb.buffer, cp - lb.buffer + 1, lineno, linecharno);
 	}
       else if (members
-	       && LOOKING_AT (cp, "var")
+	       && (LOOKING_AT (cp, "var")
+		   || LOOKING_AT (cp, "const"))
 	       && *cp == '$')
 	{
 	  name = cp;


--=-=-=--