unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Thomas Fitzsimmons <fitzsim@fitzsim.org>
To: 31742@debbugs.gnu.org
Subject: bug#31742: 26.1.50; excorporate.elc byte-compiled in Emacs 25.x fails in Emacs 26.1
Date: Wed, 06 Jun 2018 21:07:21 -0400	[thread overview]
Message-ID: <m336xz76ba.fsf@fitzsim.org> (raw)

[-- Attachment #1: Type: text/plain, Size: 1686 bytes --]

Hi,

An Excorporate user reported an issue when running on Emacs 26.1 that
didn't happen in Emacs 25.3.

The error message, when trying to retrieve calendar items on a given day
is:

soap-find-operation: Wrong type argument: soap-binding, ("http://schemas.microsoft.com/exchange/services/2006/messages" . "ExchangeServiceBinding")

The simplest workaround is:

   M-x package-reinstall RET excorporate RET

I narrowed the cause down to what seems to be an incompatibility between
25.x bytecode and 26.1.  This issue only happens when excorporate.elc
has been byte compiled in Emacs 25.x (the .x doesn't seem to matter; I
replicated it on Emacs 25.1) and is then run in Emacs 26.1.  It doesn't
happen with a fresh package install on 25.x or 26.1.

When in the failure state, if I re-eval this function:

(defun exco--bind-wsdl (wsdl service-url port-name target-namespace
                             binding-name)
  "Create a WSDL binding.
Create a binding port for WSDL from SERVICE-URL, PORT-NAME,
TARGET-NAMESPACE and BINDING-NAME."
  (let* ((namespace (soap-wsdl-find-namespace target-namespace wsdl))
         (port (make-soap-port
                :name port-name
                :binding (cons target-namespace binding-name)
                :service-url service-url)))
    (soap-namespace-put port namespace)
    (push port (soap-wsdl-ports wsdl))
    (soap-resolve-references port wsdl)
    wsdl))

everything works.

In terms higher level functionality, it seems like the call to
soap-resolve-references has no effect.

I'm attaching the 25.1 and 26.1 bytecode for this function,
disassembled.  Maybe someone can identify what's wrong or suggest next
steps?

Thank you,
Thomas


[-- Attachment #2: exco--bind-wsdl-dump-25.1.txt --]
[-- Type: text/plain, Size: 908 bytes --]

byte code for exco--bind-wsdl:
  doc:  Create a WSDL binding. ...
  args: (arg1 arg2 arg3 arg4 arg5)
0	constant  soap-wsdl-find-namespace
1	stack-ref 2
2	stack-ref 6
4	call	  2
5	constant  vector
6	constant  cl-struct-soap-port
7	stack-ref 5
8	constant  nil
9	stack-ref 8
11	stack-ref 7
13	stack-ref 7
15	cons	  
16	call	  5
17	constant  soap-namespace-put
18	stack-ref 1
19	stack-ref 3
20	call	  2
21	discard	  
22	stack-ref 6
24	constant  0
25	aref	  
26	varref	  cl-struct-soap-wsdl-tags
27	memq	  
28	goto-if-not-nil 1
31	constant  signal
32	constant  wrong-type-argument
33	constant  soap-wsdl
34	stack-ref 9
36	list2	  
37	call	  2
38	discard	  
39:1	stack-ref 6
41	dup	  
42	constant  4
43	stack-ref 3
44	stack-ref 3
45	constant  4
46	aref	  
47	cons	  
48	aset	  
49	discardN  2
51	constant  soap-resolve-references
52	stack-ref 1
53	stack-ref 8
55	call	  2
56	discard	  
57	stack-ref 6
59	return	  

[-- Attachment #3: exco--bind-wsdl-dump-26.1.txt --]
[-- Type: text/plain, Size: 905 bytes --]

byte code for exco--bind-wsdl:
  doc:  Create a WSDL binding. ...
  args: (arg1 arg2 arg3 arg4 arg5)
0	constant  soap-wsdl-find-namespace
1	stack-ref 2
2	stack-ref 6
4	call	  2
5	constant  record
6	constant  soap-port
7	stack-ref 5
8	constant  nil
9	stack-ref 8
11	stack-ref 7
13	stack-ref 7
15	cons	  
16	call	  5
17	constant  soap-namespace-put
18	stack-ref 1
19	stack-ref 3
20	call	  2
21	discard	  
22	constant  type-of
23	stack-ref 7
25	call	  1
26	varref	  cl-struct-soap-wsdl-tags
27	memq	  
28	goto-if-not-nil 1
31	constant  signal
32	constant  wrong-type-argument
33	constant  soap-wsdl
34	stack-ref 9
36	list2	  
37	call	  2
38	discard	  
39:1	stack-ref 6
41	dup	  
42	constant  4
43	stack-ref 3
44	stack-ref 3
45	constant  4
46	aref	  
47	cons	  
48	aset	  
49	discardN  2
51	constant  soap-resolve-references
52	stack-ref 1
53	stack-ref 8
55	call	  2
56	discard	  
57	stack-ref 6
59	return	  

             reply	other threads:[~2018-06-07  1:07 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-07  1:07 Thomas Fitzsimmons [this message]
2018-06-07  1:14 ` bug#31742: 26.1.50; excorporate.elc byte-compiled in Emacs 25.x fails in Emacs 26.1 Noam Postavsky
2018-06-07  2:01   ` Thomas Fitzsimmons
2018-06-07 12:21     ` Noam Postavsky
2018-06-07 14:06       ` Thomas Fitzsimmons
2018-06-07 17:36         ` Noam Postavsky
2018-06-08  1:13           ` Thomas Fitzsimmons
2018-06-08  1:57             ` Noam Postavsky
2018-06-08  2:17               ` Thomas Fitzsimmons
2018-06-08 12:19                 ` Noam Postavsky
2018-06-08 14:18                   ` Thomas Fitzsimmons
2018-06-09  0:01                     ` Alex Harsanyi
2018-06-09  2:54                       ` Thomas Fitzsimmons
2018-06-09  9:13                         ` Alex Harsanyi
2018-06-09 10:32                           ` Thomas Fitzsimmons
2018-06-12  1:55                           ` Thomas Fitzsimmons
2018-06-12 17:11                             ` Eli Zaretskii
2018-06-13  1:39                               ` Thomas Fitzsimmons
2018-06-17  0:12                             ` Alex Harsanyi
2018-06-17  0:36                               ` Thomas Fitzsimmons
2018-06-17  1:31                                 ` Alex Harsanyi
2018-06-17  1:36                                   ` Noam Postavsky
2018-06-17 13:02                                   ` Thomas Fitzsimmons
2018-06-09 10:30                       ` Thomas Fitzsimmons
2018-06-09 12:13                         ` Noam Postavsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m336xz76ba.fsf@fitzsim.org \
    --to=fitzsim@fitzsim.org \
    --cc=31742@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).