// File:       initcin.c++
// Version:    1.00
// Author:     (c) Miles Sabin, 1997
// Purpose:    definition and initialization of cin

// Change log:
//  20/02/97   v. 1.00

#include "istream.h"
#include "ostream.h"

#include <stdio.h>
#include "new.h"
#include "newcasts.h"
#include "stdiobuf.h"


// can't include iostream.h here
extern ostream cout;


struct istream_buffer
{
  char buffer[sizeof(istream)];
};

istream_buffer cin;

extern "C" void iostream_initialize_cin()
{
  new (&cin) istream(new stdiobuf(stdin));
  reinterpret_cast(istream*, &cin)->tie(&cout);
}
