When auto-hscroll-mode is set to `current-line' and scroll-left is invoked with arguments ARG > 0 and SET-MINIMUM non-nil, then when the current line is automatically horizontally scrolled, all other lines in the buffer are scrolled back to logical BOL, i.e. SET-MINIMUM is ignored (except on the current line). To reproduce: 0. emacs -Q 1. Set auto-hscroll-mode to `current-line'. 2. Type `C-x C-f /path/to/hscroll-bug RET' (the attached file). 3. Type `M-x toggle-truncate-lines' and `M-: (scroll-left 32 t)'. 4. Type `C-p' repeatedly. => When point is on the third line, and for all subsequent vertical motion, all lines but the current one are displayed starting at BOL instead of column SET-MINIMUM. (I found this bug because I sometimes use scroll-left with non-nil SET-MINIMUM in the Gnus *Summary* buffer to see more of the article Subject lines; the attached file hscroll-bug, used in the above recipe, is taken from such a buffer.) In GNU Emacs 26.0.50 (build 14, x86_64-pc-linux-gnu, GTK+ Version 3.22.8) of 2017-05-21 built on rosalinde Repository revision: 08212929ba7052883bd506be320dfaaae5b68970 Windowing system distributor 'The X.Org Foundation', version 11.0.11901000 Configured using: 'configure 'CFLAGS=-Og -g3'' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix