Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
f2b0e316
Commit
f2b0e316
authored
Aug 20, 2008
by
Christian Costa
Committed by
Alexandre Julliard
Aug 20, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcirt: Implement some ostream stubs.
parent
5bb6e4ab
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
61 additions
and
3 deletions
+61
-3
msvcirt.c
dlls/msvcirt/msvcirt.c
+58
-0
msvcirt.spec
dlls/msvcirt/msvcirt.spec
+3
-3
No files found.
dlls/msvcirt/msvcirt.c
View file @
f2b0e316
...
...
@@ -16,6 +16,9 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "config.h"
#include "wine/port.h"
#include <stdarg.h>
#include "windef.h"
...
...
@@ -24,6 +27,61 @@
WINE_DEFAULT_DEBUG_CHANNEL
(
msvcirt
);
typedef
struct
{
LPVOID
VTable
;
}
class_ostream
;
#ifdef __i386__
/* thiscall functions are i386-specific */
#define THISCALL(func) __thiscall_ ## func
#define THISCALL_NAME(func) __ASM_NAME("__thiscall_" #func)
#define DEFINE_THISCALL_WRAPPER(func) \
extern void THISCALL(func)(); \
__ASM_GLOBAL_FUNC(__thiscall_ ## func, \
"popl %eax\n\t" \
"pushl %ecx\n\t" \
"pushl %eax\n\t" \
"jmp " __ASM_NAME(#func) )
#else
/* __i386__ */
#define THISCALL(func) func
#define THISCALL_NAME(func) __ASM_NAME(#func)
#define DEFINE_THISCALL_WRAPPER(func)
/* nothing */
#endif
/* __i386__ */
/******************************************************************
* ??6ostream@@QAEAAV0@H@Z (MSVCRTI.@)
* class ostream & __thiscall ostream::operator<<(int)
*/
DEFINE_THISCALL_WRAPPER
(
MSVCIRT_operator_sl_int
)
void
*
__stdcall
MSVCIRT_operator_sl_int
(
class_ostream
*
_this
,
int
integer
)
{
FIXME
(
"(%p)->(%d) stub
\n
"
,
_this
,
integer
);
return
_this
;
}
/******************************************************************
* ??6ostream@@QAEAAV0@PBD@Z (MSVCRTI.@)
* class ostream & __thiscall ostream::operator<<(char const *)
*/
DEFINE_THISCALL_WRAPPER
(
MSVCIRT_operator_sl_pchar
)
void
*
__stdcall
MSVCIRT_operator_sl_pchar
(
class_ostream
*
_this
,
const
char
*
string
)
{
FIXME
(
"(%p)->(%s) stub
\n
"
,
_this
,
string
);
return
_this
;
}
/******************************************************************
* ?endl@@YAAAVostream@@AAV1@@Z (MSVCRTI.@)
* class ostream & __cdecl endl(class ostream &)
*/
void
*
CDECL
MSVCIRT_endl
(
class_ostream
*
_this
)
{
FIXME
(
"(%p)->() stub
\n
"
,
_this
);
return
_this
;
}
BOOL
WINAPI
DllMain
(
HINSTANCE
inst
,
DWORD
reason
,
LPVOID
reserved
)
{
switch
(
reason
)
...
...
dlls/msvcirt/msvcirt.spec
View file @
f2b0e316
...
...
@@ -134,7 +134,7 @@
@ stub ??6ostream@@QAEAAV0@E@Z # class ostream & __thiscall ostream::operator<<(unsigned char)
@ stub ??6ostream@@QAEAAV0@F@Z # class ostream & __thiscall ostream::operator<<(short)
@ stub ??6ostream@@QAEAAV0@G@Z # class ostream & __thiscall ostream::operator<<(unsigned short)
@
stub ??6ostream@@QAEAAV0@H@Z
# class ostream & __thiscall ostream::operator<<(int)
@
cdecl -i386 -norelay ??6ostream@@QAEAAV0@H@Z(ptr long) __thiscall_MSVCIRT_operator_sl_int
# class ostream & __thiscall ostream::operator<<(int)
@ stub ??6ostream@@QAEAAV0@I@Z # class ostream & __thiscall ostream::operator<<(unsigned int)
@ stub ??6ostream@@QAEAAV0@J@Z # class ostream & __thiscall ostream::operator<<(long)
@ stub ??6ostream@@QAEAAV0@K@Z # class ostream & __thiscall ostream::operator<<(unsigned long)
...
...
@@ -145,7 +145,7 @@
@ stub ??6ostream@@QAEAAV0@P6AAAVios@@AAV1@@Z@Z # class ostream & __thiscall ostream::operator<<(class ios & (__cdecl*)(class ios &))
@ stub ??6ostream@@QAEAAV0@PAVstreambuf@@@Z # class ostream & __thiscall ostream::operator<<(class streambuf *)
@ stub ??6ostream@@QAEAAV0@PBC@Z # class ostream & __thiscall ostream::operator<<(signed char const *)
@
stub ??6ostream@@QAEAAV0@PBD@Z
# class ostream & __thiscall ostream::operator<<(char const *)
@
cdecl -i386 -norelay ??6ostream@@QAEAAV0@PBD@Z(ptr ptr) __thiscall_MSVCIRT_operator_sl_pchar
# class ostream & __thiscall ostream::operator<<(char const *)
@ stub ??6ostream@@QAEAAV0@PBE@Z # class ostream & __thiscall ostream::operator<<(unsigned char const *)
@ stub ??6ostream@@QAEAAV0@PBX@Z # class ostream & __thiscall ostream::operator<<(void const *)
@ stub ??7ios@@QBEHXZ # int __thiscall ios::operator!(void)const
...
...
@@ -268,7 +268,7 @@
@ stub ?eback@streambuf@@IBEPADXZ # char * __thiscall streambuf::eback(void)const
@ stub ?ebuf@streambuf@@IBEPADXZ # char * __thiscall streambuf::ebuf(void)const
@ stub ?egptr@streambuf@@IBEPADXZ # char * __thiscall streambuf::egptr(void)const
@
stub ?endl@@YAAAVostream@@AAV1@@Z
# class ostream & __cdecl endl(class ostream &)
@
cdecl ?endl@@YAAAVostream@@AAV1@@Z(ptr) MSVCIRT_endl
# class ostream & __cdecl endl(class ostream &)
@ stub ?ends@@YAAAVostream@@AAV1@@Z # class ostream & __cdecl ends(class ostream &)
@ stub ?eof@ios@@QBEHXZ # int __thiscall ios::eof(void)const
@ stub ?epptr@streambuf@@IBEPADXZ # char * __thiscall streambuf::epptr(void)const
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment