Subject: bug#12163: 24.1; Can not input anything or showing none output when debugging c/c++ application.

From: Eli Zaretskii <[email-masked]>
Date: Fri, 10 Aug 2012 09:37:35 +0300

[Please keep the bug address in the CC list.]

> From: qq510371827 <[email-masked]>
> Date: Fri, 10 Aug 2012 10:58:11 +0800
> 
> Thanks for your help.But it doesn't work yet. I added :
>   setbuf(stdin,NULL);
>   setbuf(stdout,NULL);
> or,
>   setvbuf(stdin,NULL,_IONBF,0);
>   setvbuf(stdout,NULL,_IONBF,0);
> and
> fflush(stdout) after printf,
> All of the above didn't work, None output when debugging my application.In
> addition,I can not input values during debugging yet. for instance,
> 1...........scanf("%c",s);
> 2...........
> 3...........
> 4...........i=0; // set breakpoint at this line
> During the debugging,*What is the expected result?*
> It should suspend and wait IO buffer's input values. Then after I input a
> value in IO buffer and press RET it resumed and stopped at line 4 ( it hit
> the breakpoint).
> *But in fact What happens instead?*
> It run and directly stopped at line 4 and didn't give me a chance to input
> anything. I still input some values in io buffer and press RET but it
> didn't give me a response. It seems as if the debugger didn't recognize
> emacs' input/ouput IO buffer to be its input/output pipe and still kept
> waitting for input.
> This problem only appeared in emacs 24.1. Emacs 23.4 works very well
> without this problem.

Try invoking GDB from Emacs like this:

  M-x gud-gdb RET

If that doesn't help, either, then I'm clueless, sorry.  Perhaps
someone else could help.