Path: utzoo!utgpu!watmath!uunet!shelby!apple!gem.mps.ohio-state.edu!tut.cis.ohio-state.edu!MITVMA.MIT.EDU!trost%REED.BITNET From: trost%REED.BITNET@MITVMA.MIT.EDU Newsgroups: gnu.bash.bug Subject: yacc/bison incompatibility? Message-ID: <8909280321.AA03984@.reed.bitnet> Date: 28 Sep 89 03:21:30 GMT Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 50 Details that Brian asked about: Subshell in emacs was usually /bin/csh. gcc got the appropriate flags (like -traditional) --- it did, after all, compile. The include files have not been "fixed". I have made no changes to the sources; they are made from literally the same source files. I have made no patches, no nothin'. Just compile and go --- your configuration management is very clean. I finally understand the bit about not reading the .bashrc. Trouble is, bash being run under an xterm isn't really a login shell. How is loginness being determined? (I know --- UTSL). *And*, it looks like I dropped a critical part of the bug report. After reading the .bashrc, if I put the entire for loop on one line, it works --- if I break it up, it doesn't. This is almost definetely a grammar problem. Our bison is version 1.03. Oh, and why does "rsh reed xterm -display bassoon:0" cause my .profile to be executed? This is confusing; I thought non-interactive processes weren't supposed to get anything? (I switched shells last night, so my environ has changed slightly). ---------------- STOP THE PRESSES! A little experimentation points out the problem. Setting the shell variable PROMPT_COMMAND causes the error I described when the shell is compiled with yacc. Record follows: % bash -norc bash$ PROMPT_COMMAND='dirs' /reed/u/ss/trost bash$ for i in a b; do /reed/u/ss/trost bash>echo $i /reed/u/ss/trost bash>done `done' is not a valid identifier /reed/u/ss/trost bash$ for i in a b; do echo $i; done a b /reed/u/ss/trost bash$