Configuration Information: Machine: x86_64 OS: linux-gnu Compiler: gcc Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='x86_64' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='x86_64-unknown-linux-gnu' -DCONF_VENDOR='unknown' -DLOCALEDIR='/usr/local/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -DDEBUG -DMALLOC_DEBUG -I. -I. -I./include -I./lib -g -O2 -Wno-parentheses -Wno-format-security uname output: Linux vapier 4.0.0 #52 SMP PREEMPT Sun Apr 19 01:10:37 EDT 2015 x86_64 AMD Phenom(tm) II X4 980 Processor AuthenticAMD GNU/Linux Machine Type: x86_64-unknown-linux-gnu
Bash Version: 4.4 Patch Level: 0 Release Status: alpha Description: no patches applied; just ran: ./configure --with-bash-malloc --enable-mem-scramble make then used the resulting ./bash for tests. since upgrading to bash-4.4-alpha, gcc failed to build on my system. narrowing it down (a bit), it's this command line: /var/tmp/portage/sys-devel/gcc-4.8.5/work/build/./gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.8.5/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -mx32 -O2 -O2 -march=amdfam10 -pipe -g -Wimplicit-function-declaration -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -mlong-double-80 -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fstack-check=no -shared -nodefaultlibs -Wl,--soname=libgcc_s.so.1 -Wl,--version-script=libgcc.map -o x32/libgcc_s.so.1.tmp -O2 -march=amdfam10 -pipe -g -Wimplicit-function-declaration -B./ _muldi3_s.o _negdi2_s.o _lshrdi3_s.o _ashldi3_s.o _ashrdi3_s.o _cmpdi2_s.o _ucmpdi2_s.o _clear_cache_s.o _trampoline_s.o __main_s.o _absvsi2_s.o _absvdi2_s.o _addvsi3_s.o _addvdi3_s.o _subvsi3_s.o _subvdi3_s.o _mulvsi3_s.o _mulvdi3_s.o _negvsi2_s.o _negvdi2_s.o _ctors_s.o _ffssi2_s.o _ffsdi2_s.o _clz_s.o _clzsi2_s.o _clzdi2_s.o _ctzsi2_s.o _ctzdi2_s.o _popcount_tab_s.o _popcountsi2_s.o _popcountdi2_s.o _paritysi2_s.o _paritydi2_s.o _powisf2_s.o _powidf2_s.o _powixf2_s.o _mulsc3_s.o _muldc3_s.o _mulxc3_s.o _divsc3_s.o _divdc3_s.o _divxc3_s.o _bswapsi2_s.o _bswapdi2_s.o _clrsbsi2_s.o _clrsbdi2_s.o _fixunssfsi_s.o _fixunsdfsi_s.o _fixunsxfsi_s.o _fixsfdi_s.o _fixdfdi_s.o _fixxfdi_s.o _fixunssfdi_s.o _fixunsdfdi_s.o _fixunsxfdi_s.o _floatdisf_s.o _floatdidf_s.o _floatdixf_s.o _floatundisf_s.o _floatundidf_s.o _floatundixf_s.o _divdi3_s.o _moddi3_s.o _udivdi3_s.o _umoddi3_s.o _udiv_w_sdiv_s.o _udivmoddi4_s.o cpuinfo_s.o sfp-exceptions_s.o addtf3_s.o divtf3_s.o multf3_s.o negtf2_s.o subtf3_s.o unordtf2_s.o fixtfsi_s.o fixunstfsi_s.o floatsitf_s.o floatunsitf_s.o fixtfdi_s.o fixunstfdi_s.o floatditf_s.o floatunditf_s.o fixtfti_s.o fixunstfti_s.o floattitf_s.o floatuntitf_s.o extendsftf2_s.o extenddftf2_s.o extendxftf2_s.o trunctfsf2_s.o trunctfdf2_s.o trunctfxf2_s.o getf2_s.o letf2_s.o eqtf2_s.o _divtc3_s.o _multc3_s.o _powitf2_s.o enable-execute-stack_s.o unwind-dw2_s.o unwind-dw2-fde-dip_s.o unwind-sjlj_s.o unwind-c_s.o emutls_s.o libgcc.a -lc \ && rm -f x32/libgcc_s.so \ && if [ -f x32/libgcc_s.so.1 ]; then mv -f x32/libgcc_s.so.1 x32/libgcc_s.so.1.backup; else true; fi \ && mv x32/libgcc_s.so.1.tmp x32/libgcc_s.so.1 \ && ln -s libgcc_s.so.1 x32/libgcc_s.so if i run the same make with SHELL set to bash-4.3, it passes fine. if i rip out that command line and run it in a standalone script w/bash-4.4, it passes fine. running it with set -x shows that it runs the xgcc & rm steps, but that's it. using strace shows xgcc and rm both exit(0), but for some reason bash does not continue to the following commands like it should. if i change the && to a ; after the first rm, it still stops executing at that point. if i change the && to a ; after the xgcc command, then the rest of the commands run fine. attached is the strace. it is not in fork mode, yet the shell clearly does an exec into the rm tool. looks like bash, for some reason, thinks this is the end of the possible commands and so does an optimization to exec into it ? -mike
bash-4.4-strace.log.gz
Description: Binary data
signature.asc
Description: Digital signature