Subject: bug#21605: 24.3; Eshell not using stderr

From: Nikolas De Giorgis <[email-masked]>
Date: Fri, 02 Oct 2015 12:23:58 +0000

This bug report will be sent to the Bug-GNU-Emacs mailing list

and the GNU bug tracker at debbugs.gnu.org. Please check that

the From: line contains a valid email address. After a delay of up

to one day, you should receive an acknowledgment at that address.

Please write in English if possible, as the Emacs maintainers

usually do not have translators for other languages.

Please describe exactly what actions triggered the bug, and

the precise symptoms of the bug. If you can, give a recipe

starting from `emacs -Q':

Starting from emacs -Q

go into eshell (M-x eshell)

executing the following c++ program:

#include <iostream>

int main()

{

   std::cerr << "ERROR\n";

   std::cout << "OUTPUT\n";

}

provides the following output:

~ $ ./a.out 2> /dev/null

ERROR

OUTPUT

>From which it seems that eshell ignores stderr and sends everything to
stdout

If Emacs crashed, and you have the Emacs process in the gdb debugger,

please include the output from the following gdb commands:

`bt full' and `xbacktrace'.

For information about debugging Emacs, please read the file

/usr/share/emacs/24.3/etc/DEBUG.

In GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7)

of 2014-03-07 on lamiak, modified by Debian

Windowing system distributor `The X.Org Foundation', version 11.0.11600000

System Description: Ubuntu 14.04.3 LTS

Configured using:

`configure '--build' 'x86_64-linux-gnu' '--build' 'x86_64-linux-gnu'

'--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib'

'--localstatedir=/var/lib' '--infodir=/usr/share/info'

'--mandir=/usr/share/man' '--with-pop=yes'

'--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.3/site-lisp:/usr/share/emacs/site-lisp'

'--with-crt-dir=/usr/lib/x86_64-linux-gnu' '--with-x=yes'

'--with-x-toolkit=gtk3' '--with-toolkit-scroll-bars'

'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector

--param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall'

'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro'

'CPPFLAGS=-D_FORTIFY_SOURCE=2''

Important settings:

value of $LC_MONETARY: it_IT.UTF-8

value of $LC_NUMERIC: it_IT.UTF-8

value of $LC_TIME: it_IT.UTF-8

value of $LANG: en_US.UTF-8

locale-coding-system: utf-8-unix

default enable-multibyte-characters: t

Major mode: EShell

Minor modes in effect:

shell-dirtrack-mode: t

keyfreq-autosave-mode: t

keyfreq-mode: t

global-undo-tree-mode: t

undo-tree-mode: t

electric-pair-mode: t

ido-everywhere: t

show-paren-mode: t

yas-global-mode: t

yas-minor-mode: t

ecb-minor-mode: t

TeX-PDF-mode: t

TeX-source-correlate-mode: t

global-linum-mode: t

display-time-mode: t

recentf-mode: t

winner-mode: t

tooltip-mode: t

mouse-wheel-mode: t

file-name-shadow-mode: t

global-font-lock-mode: t

font-lock-mode: t

blink-cursor-mode: t

auto-composition-mode: t

auto-encryption-mode: t

auto-compression-mode: t

temp-buffer-resize-mode: t

line-number-mode: t

transient-mark-mode: t

Recent input:

n d SPC <backspace> <backspace> SPC d a s h <return>

<help-echo> <help-echo> <down-mouse-1> <mouse-movement>

<drag-mouse-1> <help-echo> <help-echo> <down-mouse-1>

<mouse-movement> <drag-mouse-1> <down-mouse-1> <mouse-1>

<down-mouse-1> <mouse-1> C-x b <return> <help-echo>

<down-mouse-1> <mouse-1> <down-mouse-1> <mouse-movement>

<mouse-movement> <drag-mouse-1> <help-echo> <down-mouse-3>

<drag-mouse-3> <down-mouse-1> <mouse-movement> <mouse-movement>

<drag-mouse-1> <down-mouse-1> <mouse-movement> <mouse-movement>

<mouse-movement> <mouse-movement> <help-echo> <mouse-movement>

<drag-mouse-1> <help-echo> <help-echo> <help-echo>

<help-echo> <help-echo> <down-mouse-1> <mouse-1> s

h <return> . / a <tab> <backspace> <backspace> <backspace>

<C-up> <C-up> <C-up> <C-up> <return> C-c C-d b a s

h <return> <C-up> <C-up> <C-up> <C-up> <C-up> <return>

C-c C-d <help-echo> <down-mouse-1> <mouse-movement>

<drag-mouse-1> <f11> <help-echo> <help-echo> <down-mouse-4>

<mouse-4> <double-down-mouse-4> <double-mouse-4> <triple-down-mouse-4>

<triple-mouse-4> <triple-down-mouse-4> <triple-mouse-4>

<down-mouse-5> <mouse-5> <double-down-mouse-5> <double-mouse-5>

<down-mouse-5> <mouse-5> <double-down-mouse-5> <double-mouse-5>

<triple-down-mouse-5> <triple-mouse-5> <down-mouse-1>

<mouse-1> <down-mouse-1> <mouse-1> <down-mouse-5> <mouse-5>

C-c C-c . / a <tab> 2 > SPC / d e b <backspace> v /

n u l l <return> <help-echo> <help-echo> <help-echo>

<down-mouse-1> <mouse-movement> <mouse-movement> <drag-mouse-1>

<down-mouse-1> <mouse-movement> <mouse-1> <down-mouse-1>

<mouse-movement> <mouse-movement> <drag-mouse-1> <help-echo>

<help-echo> <down-mouse-1> <mouse-1> M-x s h e <tab>

<return> l <backspace> . / a <tab> 2 > SPC / d e <tab>

q b / <backspace> <backspace> v ( n <backspace> <backspace>

<delete> / n u <tab> <return> <help-echo> <help-echo>

<help-echo> <down-mouse-1> <mouse-1> M-x t e r m <tab>

<return> <return> . / d e <backspace> <backspace> <backspace>

. <backspace> / a <tab> 2 > SPC / d e v / n u <tab>

<return> <help-echo> <help-echo> <down-mouse-1> <mouse-1>

<help-echo> <help-echo> <down-mouse-1> <mouse-movement>

<mouse-1> <down-mouse-1> <mouse-1> C-x b <return> <down-mouse-1>

<mouse-1> <help-echo> <help-echo> <down-mouse-1> <mouse-movement>

<mouse-1> <help-echo> <help-echo> M-x e s h <tab> <return>

<help-echo> <down-mouse-1> <mouse-1> C-x b <right>

<right> <right> <right> <return> <help-echo> <help-echo>

<help-echo> <help-echo> <help-echo> <down-mouse-1>

<mouse-movement> <mouse-1> C-c C-c l s <return> <down-mouse-1>

<mouse-1> <help-echo> <help-echo> <help-echo> <help-echo>

<down-mouse-1> <mouse-1> M-x r e p o <tab> <tab> r

t <tab> <return>

Recent messages:

History item: 125

History item: 128

History item: 127

History item: 126

History item: 125

History item: 124

Mark set

Making completion list...

You can run the command `eshell' with C-c . e

Making completion list...

Load-path shadows:

~/.emacs.d/helm/helm-info hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-info

~/.emacs.d/helm/helm-grep hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-grep

~/.emacs.d/helm/helm-net hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-net

~/.emacs.d/helm/helm-sys hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-sys

~/.emacs.d/helm/helm-man hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-man

~/.emacs.d/helm/helm-locate hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-locate

~/.emacs.d/helm/helm-adaptive hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-adaptive

~/.emacs.d/helm/helm-eval hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-eval

~/.emacs.d/helm/helm-elscreen hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-elscreen

~/.emacs.d/helm/helm-buffers hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-buffers

~/.emacs.d/helm/helm-source hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-source

~/.emacs.d/helm/helm-autoloads hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-autoloads

~/.emacs.d/helm/helm-files hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-files

~/.emacs.d/helm/helm-misc hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-misc

~/.emacs.d/helm/helm-regexp hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-regexp

~/.emacs.d/helm/helm hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm

~/.emacs.d/helm/helm-org hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-org

~/.emacs.d/helm/helm-mode hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-mode

~/.emacs.d/helm/helm-eshell hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-eshell

~/.emacs.d/helm/helm-imenu hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-imenu

~/.emacs.d/helm/helm-apt hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-apt

~/.emacs.d/helm/helm-elisp hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-elisp

~/.emacs.d/helm/helm-ring hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-ring

~/.emacs.d/helm/helm-config hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-config

~/.emacs.d/helm/helm-font hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-font

~/.emacs.d/helm/helm-command hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-command

~/.emacs.d/helm/helm-utils hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-utils

~/.emacs.d/helm/helm-semantic hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-semantic

~/.emacs.d/helm/helm-plugin hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-plugin

~/.emacs.d/helm/helm-match-plugin hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-match-plugin

~/.emacs.d/helm/helm-elisp-package hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-elisp-package

~/.emacs.d/helm/helm-help hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-help

~/.emacs.d/helm/helm-tags hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-tags

~/.emacs.d/helm/helm-dabbrev hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-dabbrev

~/.emacs.d/helm/helm-color hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-color

~/.emacs.d/helm/helm-pkg hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-pkg

~/.emacs.d/helm/helm-bookmark hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-bookmark

~/.emacs.d/helm/helm-aliases hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-aliases

~/.emacs.d/helm/helm-external hides
/home/nikolas/.emacs.d/elpa/helm-20150518.202/helm-external

/usr/share/emacs24/site-lisp/cmake-data/cmake-mode hides
/usr/share/emacs/site-lisp/cmake-mode

/usr/share/emacs/24.3/site-lisp/debian-startup hides
/usr/share/emacs/site-lisp/debian-startup

/usr/share/emacs24/site-lisp/latex-cjk-thai/thai-word hides
/usr/share/emacs/24.3/lisp/language/thai-word

/home/nikolas/.emacs.d/elpa/irony-20150614.1225/.dir-locals hides
/usr/share/emacs/24.3/lisp/gnus/.dir-locals

/usr/share/emacs/24.3/lisp/emacs-lisp/cl-lib hides
/home/nikolas/.emacs.d/elpa/cl-lib-0.5/cl-lib

Features:

(shadow sort mail-extr emacsbug message rfc822 mml mml-sec mm-decode

mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader

sendmail rfc2047 rfc2045 ietf-drums mail-utils tabify man tramp-cache

tramp tramp-compat tramp-loaddefs shell format-spec pcmpl-unix find-file

lisp-mnt em-unix pcomplete em-term term disp-table ehelp em-script

em-prompt em-ls em-hist em-pred em-glob em-dirs em-cmpl em-basic

em-banner em-alias esh-var esh-io esh-cmd esh-opt esh-ext esh-proc

esh-arg eldoc esh-groups eshell esh-module esh-mode esh-util misearch

multi-isearch ffap url-parse auth-source gnus-util mm-util mail-prsvr

password-cache url-vars windmove imenu cus-edit cus-start cus-load

irony-cdb-json pp json irony-cdb-clang-complete irony-cdb company-files

company-oddmuse company-keywords company-etags etags company-gtags

company-dabbrev-code company-dabbrev company-capf company-cmake

company-xcode company-clang company-semantic company-eclim

company-template company-css company-nxml company-bbdb company-elisp

company-irony irony-completion irony-snippet irony find-func company

cc-langs cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align

cc-engine cc-vars cc-defs ecb-layout-defs cyberpunk-theme keyfreq

undo-tree diff electric ido paren popup-complete yasnippet help-mode ecb

warnings ecb-symboldef ecb-analyse ecb-compatibility ecb-winman-support

ecb-autogen autoload ecb-tod ecb-cycle ecb-eshell ecb-help ecb-jde

ecb-method-browser hideshow ecb-semantic-wrapper ecb-semantic

ecb-file-browser ecb-speedbar ecb-layout compile comint ansi-color

ecb-create-layout ecb-compilation ecb-common-browser speedbar sb-image

dframe ecb-navigate ecb-mode-line ecb-face tree-buffer ecb-upgrade

ecb-cedet-wrapper semantic/db-mode semantic/db-find semantic/db-ref

semantic/analyze semantic/sort semantic/scope semantic/analyze/fcn

semantic/db eieio-base semantic/format ezimage semantic/tag-ls

semantic/find semantic/ctxt semantic/util-modes semantic/util semantic

semantic/tag semantic/lex semantic/fw eieio byte-opt bytecomp

byte-compile cconv mode-local cedet ecb-util thingatpt cl-macs gv

silentcomp latex easy-mmode tex-style tex dbus xml crm server face-remap

memory-usage darkroom helm-config async-bytecomp async helm-aliases

uniquify advice help-fns cl cl-lib advice-preload linum

ac-helm-autoloads tex-site auto-complete-autoloads chess-autoloads info

company-c-headers-autoloads company-irony-autoloads company-autoloads

ctags-autoloads ctags-update-autoloads cuda-mode-autoloads

darkroom-autoloads helm-autoloads async-autoloads irony-autoloads

finder-inf keyfreq-autoloads memory-usage-autoloads minimap-autoloads

popup-autoloads cl-lib-autoloads spacemacs-theme-autoloads

undo-tree-autoloads w3-autoloads yasnippet-autoloads package

tango-dark-theme time recentf tree-widget wid-edit easymenu winner ring

edmacro kmacro time-date tooltip ediff-hook vc-hooks lisp-float-type

mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe

tabulated-list newcomment lisp-mode register page menu-bar rfn-eshadow

timer select scroll-bar mouse jit-lock font-lock syntax facemenu

font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan

thai tai-viet lao korean japanese hebrew greek romanian slovak czech

european ethiopic indian cyrillic chinese case-table epa-hook

jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces

cus-face macroexp files text-properties overlay sha1 md5 base64 format

env code-pages mule custom widget hashtable-print-readable backquote

make-network-process dbusbind dynamic-setting system-font-setting

font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)