Subject: Re: bug#30964: python-mode failing "overlapping strings" assertion lately

From: [email-masked] (Charles A. Roelli)
Date: Tue, 03 Apr 2018 20:12:48 +0200

> Date: Tue, 27 Mar 2018 11:09:38 -0700
> From: [email-masked]
> 
> Has something changed in master that might be breaking python-mode? We
> keep hitting a parsing assertion.
> 
> The surrounding code in python.el claims that
> 
>                        ;; The assertion can only fail if syntax table
>                        ;; text properties and the `syntax-ppss' cache
>                        ;; are somehow out of whack.  This has been
>                        ;; observed when using `syntax-ppss' during
>                        ;; narrowing.
>                        (cl-assert (> string-start last-string-end)
>                                   :show-args
>                                   "\
> Overlapping strings detected (start=%d, last-end=%d)")
> 
> I can _sometimes_ repro with (while (not (eobp))
> (python-nav-forward-statement)), but I haven't found a reliable test case.

I saw it with the pretest (26.0.91) today, with no narrowing,
font-lock off, and after typing M-3 " to open a docstring.  I didn't
find a reproducible case either, though.