From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <556331fdcd517d6b61d38f6c14ee3f88@mail.gmx.net> To: 9fans@cse.psu.edu Subject: Re: [9fans] An acid-question From: "Sascha Retzki" Date: Sat, 15 Jul 2006 17:28:20 +0200 In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Topicbox-Message-UUID: 80a2265a-ead1-11e9-9d60-3106f5b1d025 > i doesn't exist -- it was optimized away because your code is equivalent to this > Okay, I will never write pseudo-like code to demonstrate what I mean :/ fmt is a structure holding all meta-data of the audio-input. convertchannels() is called by a function which reads fmt->byterate audio-data from stdin, and provides another array big enough to hold a copy of the input-data (datacopy). void convertchannels(short *data, short *datacopy) { int i, j = 0; int inbyterate = fmt->samplerate * fmt->channels * 2; memcpy(datacopy,data,inbyterate * sizeof(short)); if(fmt->channels == 1) { for(i=0;i <= inbyterate;i++) { /* mono to left ... */ data[j++] = datacopy[i]; /* mono to right ... */ data[j++] = datacopy[i]; } } else sysfatal("convertchannels(): I can just convert from mono to stereo :-/\n"); > > - erik > > On Sat Jul 15 05:55:56 CDT 2006, sretzki@gmx.de wrote: >> >> Hi folks, >> >> I got a function which goes like this: >> void >> m00(...) >> { >> int i,j = 0; >> >> if(foo) { >> >> for(i=0;i<=n;i++) { >> some_data[j++] = srcdata[i] >> } >> >> } else { >> ... >> } >> } >> >> (ignore the errors) >> >> I get a fault write. Jippie. Starting to acid arround, I came across this: >> >> acid: *m00:j >> 0x00000000 >> acid: *m00:i >> :3: (error) colon: local variable not found >> acid: >> >> so obviously acid does not 'see' i because it is first used in a new block (the if()), at least I guess so. How do I display the value of i in acid? >> >> >> Mfg, Sascha