Thanks for clearing this up. I did wonder about this. Came across it when making a .tlb for those calls to the std_call dll.
RBS On Mon, Mar 2, 2015 at 6:14 AM, Scott Robison <scott at casaderobison.com> wrote: > On Sun, Mar 1, 2015 at 10:55 PM, J Decker <d3ck0r at gmail.com> wrote: > > > On Sun, Mar 1, 2015 at 9:22 PM, Keith Medcalf <kmedcalf at dessus.com> > wrote: > > > > > >I do not know if this is the case, but typically Windows creates names > > > >like > > > >_sqlite3_db_filename at X (where X is a number) if a function is defined > > as > > > >stdcall. It doesn't *have* to do this, but that's the convention used > by > > > > > > the <symbol>@X is used to include the ordinal reference (@X) in the > > symbol > > > since you can link by either name or ordinal (or, in the case of > > specially > > > constructed libraries, by both having to match). > > > > 1) the @X is the size of paramters pushed on the stack. > > 2) (something else in another mail that irked me) It's not a 'default > > calling convention for windows' it's a default calling convention for > some > > compilers; and doesn't have be even be on windows. > > > > 1. I didn't see you'd already explained the @X meaning. Sorry for > duplicating your answer. > 2. Just in case you meant me, I was not trying to say it is the default > calling convention for windows. I was saying that appending "@X" to the > symbol is the default convention used by (at least) Microsoft compilers > when using the stdcall calling convention. It's a confusing bit of > terminology what with multiple applications of the word "convention" so I > just wanted to clarify what I meant. I understand Windows does not require > everyone to use stdcall for their own APIs and such. > > -- > Scott Robison > _______________________________________________ > sqlite-users mailing list > sqlite-users at mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users >