From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 29 17:40:42 2020 Received: (at submit) by debbugs.gnu.org; 29 Oct 2020 21:40:42 +0000 Received: from localhost ([127.0.0.1]:55180 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kYFez-0004Os-JO for submit@debbugs.gnu.org; Thu, 29 Oct 2020 17:40:42 -0400 Received: from lists.gnu.org ([209.51.188.17]:57532) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kYEcv-0006vS-Bg for submit@debbugs.gnu.org; Thu, 29 Oct 2020 16:34:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54068) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kYEcv-0006fF-4M for bug-gnu-emacs@gnu.org; Thu, 29 Oct 2020 16:34:29 -0400 Received: from server258-1.web-hosting.com ([198.54.125.47]:47346) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kYEcs-00043L-8u for bug-gnu-emacs@gnu.org; Thu, 29 Oct 2020 16:34:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=corusa.net; s=default; h=Content-Type:MIME-Version:Message-ID:Subject:To:From:Date: Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=MUFOfv0Y1f2SHCZq1Ay8m4Nio2M1xxqG4fea2QuI9JE=; b=etnj3tZe9ZMioL9CFE6E3KZttK NS8CddIJHR0r0rNxA6MPJB4AuDJz1Zrg112PMGbshdyAZQmVqk0b/M3xF4bV+M6iapT4/JIc6OMHg wr3WQy2EnubCc1re8oS5Dz2Cmf5gxR7xw7WHUCUL/Q64+alri+KPYQRkOSC6AImc43Vg=; Received: from 23-24-2-197-static.hfc.comcastbusiness.net ([23.24.2.197]:41996 helo=corusa.net) by server258.web-hosting.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.93) (envelope-from ) id 1kYEcf-002qt5-PP for bug-gnu-emacs@gnu.org; Thu, 29 Oct 2020 16:34:20 -0400 Date: Thu, 29 Oct 2020 16:34:09 -0400 From: Robert Lange To: bug-gnu-emacs@gnu.org Subject: make mode should recognize ::= as a macro assignment Message-ID: <20201029203409.2nvutolbzkimbgpn@iset.darkempire.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Disposition: inline User-Agent: NeoMutt/20180716 X-OutGoing-Spam-Status: No, score=-1.0 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - server258.web-hosting.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - corusa.net X-Get-Message-Sender-Via: server258.web-hosting.com: authenticated_id: rlange@corusa.net X-Authenticated-Sender: server258.web-hosting.com: rlange@corusa.net X-Source: X-Source-Args: X-Source-Dir: X-From-Rewrite: unmodified, already matched Received-SPF: pass client-ip=198.54.125.47; envelope-from=rlange@corusa.net; helo=server258-1.web-hosting.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/29 16:06:10 X-ACL-Warn: Detected OS = Linux 3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Thu, 29 Oct 2020 17:40:40 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) Using the following simple Makefile as an example: Begin file Makefile --- ELC_FILES ::= foo.elc all: $(ELC_FILES) .el.elc: $(EMACS) -batch -Q -L . -f batch-byte-compile "$<" --- End file Makefile I've tested this on Emacs 26.1 on Debian, as well as a self-compiled 27.1. When I use the GNU immediate assignment operator `:=` the macro name ELC_FILES is correctly shown in font-lock in the macro color. But if I use the POSIX standard `::=` (well, forthcoming POSIX standard, but GNU emacs has supported it since v4.0) ELC_FILES is incorrectly shown in the target color. Looking in lisp/progmodes/make-mode.el, the const makefile-macroassign-regex is pretty gnarly, but I *think* it should match a `::=`, so I'm assuming it's getting preempted by something else, probably the const makefile-dependency-regex. Unfortunately, that regexp is a bit more than I can interpret, and I don't dare change it because I'll almost certainly break some other obscure but legal cases. I'd appreciate any insights anyone has on this. --Rob Lange --- In GNU Emacs 26.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.5) of 2019-09-22, modified by Debian built on x86-grnet-01 Windowing system distributor 'The X.Org Foundation', version 11.0.12004000 System Description: Debian GNU/Linux 10 (buster) Recent messages: Loading /etc/emacs/site-start.d/50texlive-lang-english.el (source)...done Loading delsel...done Loading diff-hl...done Loading hl-line...done Loading paren...done Loading xt-mouse...done Starting new Ispell process aspell with default dictionary... Starting Emacs daemon. When done with this frame, type C-x 5 0 Making completion list... Configured using: 'configure --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --enable-libsystemd --with-pop=yes --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.1/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --without-gconf --with-mailutils --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --enable-libsystemd --with-pop=yes --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.1/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --without-gconf --with-mailutils --with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars 'CFLAGS=-g -O2 -fdebug-prefix-map=/build/emacs-StqULU/emacs-26.1+1=. -fstack-protector-strong -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' LDFLAGS=-Wl,-z,relro' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 THREADS LIBSYSTEMD LCMS2 Important settings: value of $LC_COLLATE: C.UTF-8 value of $LC_MONETARY: en_US.utf8 value of $LC_NUMERIC: en_US.utf8 value of $LC_TIME: en_DK.UTF-8 value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Lisp Interaction Minor modes in effect: column-enforce-mode: t company-mode: t flyspell-mode: t show-paren-mode: t global-hl-line-mode: t global-diff-hl-mode: t diff-auto-refine-mode: t delete-selection-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: ~/.emacs.d/lisp/26.1/sh-script hides /usr/share/emacs/26.1/lisp/progmodes/sh-script /usr/share/emacs/site-lisp/latex-cjk-thai/thai-word hides /usr/share/emacs/26.1/lisp/language/thai-word /usr/share/emacs/site-lisp/auctex/tex-jp hides /usr/share/auctex/tex-jp /usr/share/emacs/site-lisp/auctex/tex-fold hides /usr/share/auctex/tex-fold /usr/share/emacs/site-lisp/auctex/tex-style hides /usr/share/auctex/tex-style /usr/share/emacs/site-lisp/auctex/latex hides /usr/share/auctex/latex /usr/share/emacs/site-lisp/auctex/plain-tex hides /usr/share/auctex/plain-tex /usr/share/emacs/site-lisp/auctex/bib-cite hides /usr/share/auctex/bib-cite /usr/share/emacs/site-lisp/auctex/multi-prompt hides /usr/share/auctex/multi-prompt /usr/share/emacs/site-lisp/auctex/texmathp hides /usr/share/auctex/texmathp /usr/share/emacs/site-lisp/auctex/toolbar-x hides /usr/share/auctex/toolbar-x /usr/share/emacs/site-lisp/auctex/tex-ispell hides /usr/share/auctex/tex-ispell /usr/share/emacs/site-lisp/auctex/context-nl hides /usr/share/auctex/context-nl /usr/share/emacs/site-lisp/auctex/preview hides /usr/share/auctex/preview /usr/share/emacs/site-lisp/auctex/tex-font hides /usr/share/auctex/tex-font /usr/share/emacs/site-lisp/auctex/tex hides /usr/share/auctex/tex /usr/share/emacs/site-lisp/auctex/context hides /usr/share/auctex/context /usr/share/emacs/site-lisp/auctex/context-en hides /usr/share/auctex/context-en /usr/share/emacs/site-lisp/auctex/tex-buf hides /usr/share/auctex/tex-buf /usr/share/emacs/site-lisp/auctex/prv-emacs hides /usr/share/auctex/prv-emacs /usr/share/emacs/site-lisp/auctex/font-latex hides /usr/share/auctex/font-latex /usr/share/emacs/site-lisp/auctex/tex-mik hides /usr/share/auctex/tex-mik /usr/share/emacs/site-lisp/auctex/tex-bar hides /usr/share/auctex/tex-bar /usr/share/emacs/site-lisp/auctex/tex-info hides /usr/share/auctex/tex-info Features: (shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs format-spec rfc822 mml mml-sec epa derived epg gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils server column-enforce-mode company-oddmuse company-keywords company-etags etags xref project ring company-gtags company-dabbrev-code company-dabbrev company-files company-clang company-capf company-cmake company-semantic company-template company-bbdb company-c-headers company edmacro kmacro pcase flyspell ispell elec-pair time-date xt-mouse paren hl-line diff-hl vc-dir ewoc vc vc-dispatcher diff-mode easy-mmode delsel cus-start cus-load dim printing ps-print ps-print-loaddefs ps-def lpr finder-inf rx info package easymenu epg-config url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache url-vars seq byte-opt bytecomp byte-compile cconv cl gv tls gnutls cl-loaddefs cl-lib preview-latex tex-site auto-loads mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 297298 12039) (symbols 48 31862 1) (miscs 40 74 128) (strings 32 97361 2676) (string-bytes 1 2485635) (vectors 16 28006) (vector-slots 8 675528 13560) (floats 8 309 45) (intervals 56 308 0) (buffers 992 13)) From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 30 08:52:36 2020 Received: (at 44319) by debbugs.gnu.org; 30 Oct 2020 12:52:36 +0000 Received: from localhost ([127.0.0.1]:56552 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kYTtU-0002d1-Ei for submit@debbugs.gnu.org; Fri, 30 Oct 2020 08:52:36 -0400 Received: from quimby.gnus.org ([95.216.78.240]:37358) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kYTtT-0002ck-5u for 44319@debbugs.gnu.org; Fri, 30 Oct 2020 08:52:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=eAUzqU5zCqzQlLaWgjKaEuIVZ7hAXgfDY11ONeKZLgg=; b=P5z9xxny5ouFnH42+vpPQWwIiH IVvXRL9+8L4XJkY14+lWxi2pbfABCbAmjHCXaGNrboEAhxbRxTHTPQ4H/XBzCF+IhLc0f7F4JW9YC TmsbW7Ef9v98r9CzO7K6NCvV595FUfT/b/Q6OiU4HvXdFkNpt8isjkc0nWoYjicLYplM=; Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kYTtF-0000D0-Uf; Fri, 30 Oct 2020 13:52:28 +0100 From: Lars Ingebrigtsen To: Robert Lange Subject: Re: bug#44319: make mode should recognize ::= as a macro assignment References: <20201029203409.2nvutolbzkimbgpn@iset.darkempire.org> X-Now-Playing: PJ Harvey's _Dry Demos_: "Water" Date: Fri, 30 Oct 2020 13:52:20 +0100 In-Reply-To: <20201029203409.2nvutolbzkimbgpn@iset.darkempire.org> (Robert Lange's message of "Thu, 29 Oct 2020 16:34:09 -0400") Message-ID: <87imarj2pn.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Robert Lange writes: > I've tested this on Emacs 26.1 on Debian, as well as a self-compiled > 27.1. When I use the GNU immediate assignment operator `:=` the macro > name ELC_FILES is correctly shown in font-lock in the m [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44319 Cc: 44319@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Robert Lange writes: > I've tested this on Emacs 26.1 on Debian, as well as a self-compiled > 27.1. When I use the GNU immediate assignment operator `:=` the macro > name ELC_FILES is correctly shown in font-lock in the macro color. But > if I use the POSIX standard `::=` (well, forthcoming POSIX standard, > but GNU emacs has supported it since v4.0) ELC_FILES is incorrectly > shown in the target color. Yup. This bug is still present in Emacs 28. > Looking in lisp/progmodes/make-mode.el, the const > makefile-macroassign-regex is pretty gnarly, but I *think* it should > match a `::=`, so I'm assuming it's getting preempted by something > else, probably the const makefile-dependency-regex. Unfortunately, > that regexp is a bit more than I can interpret, and I don't dare > change it because I'll almost certainly break some other obscure but > legal cases. The bug seemed to be in makefile-match-dependency, which checked for ":=", but not for "::=", and I've now fixed this on the trunk. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 30 08:52:42 2020 Received: (at control) by debbugs.gnu.org; 30 Oct 2020 12:52:42 +0000 Received: from localhost ([127.0.0.1]:56555 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kYTtZ-0002dH-Nd for submit@debbugs.gnu.org; Fri, 30 Oct 2020 08:52:42 -0400 Received: from quimby.gnus.org ([95.216.78.240]:37374) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kYTtY-0002cu-Kz for control@debbugs.gnu.org; Fri, 30 Oct 2020 08:52:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Subject:From:To:Message-Id:Date:Sender:Reply-To:Cc: MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=KjPe2V2r04c+lPnz2332B1AzS/4jtF79fCDF4TuKNCc=; b=YSwwTjpSZ3nUOmWfeMushJVEJ8 4kDuZ/UTqkYQOZJYMvzraRHas+WM9zGimrkIXoaJ1a8ASElZiB/v3ttxmSLGOjls+3r8IBIvyq/Dz XYganttfy6GREDecGvLsMYA4reSnUUcMhxfhRWaM4TwoAjUsf7gbW5fgNGMgdy1H9nBA=; Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kYTtQ-0000D9-TM for control@debbugs.gnu.org; Fri, 30 Oct 2020 13:52:35 +0100 Date: Fri, 30 Oct 2020 13:52:31 +0100 Message-Id: <87h7qbj2pc.fsf@gnus.org> To: control@debbugs.gnu.org From: Lars Ingebrigtsen Subject: control message for bug #44319 X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: tags 44319 fixed close 44319 28.1 quit Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 44319 fixed close 44319 28.1 quit From unknown Sat Sep 20 13:01:01 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sat, 28 Nov 2020 12:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator