Message-ID: <3B38945D.C50197F@sensor.com> From: Ron Natalie X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.os.msdos.djgpp,comp.lang.c++,comp.lang.c Subject: Re: DJGPP reserves wrong int size References: <9dde68b7 DOT 0106241053 DOT 2a385311 AT posting DOT google DOT com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 16 Date: Tue, 26 Jun 2001 09:55:41 -0400 NNTP-Posting-Host: 156.40.240.200 X-Trace: mencken.net.nih.gov 993563574 156.40.240.200 (Tue, 26 Jun 2001 09:52:54 EDT) NNTP-Posting-Date: Tue, 26 Jun 2001 09:52:54 EDT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com > > and disassemble it I get the following: > > 00000000 55 push ebp > 00000001 89E5 mov ebp,esp > 00000003 83EC04 sub esp,byte +0x18 > 00000006 C745FC78563412 mov dword [ebp-0x4],0x12345678 > 0000000D C9 leave > 0000000E C3 ret > > The third line reserves 18 bytes. No, your disassembly is wrong. The third line substracts 4 bytes from the stack pointer. The code does exactly what you think it should.