mescc: Mes C Library: Use __ as global internal prefix.
[mes.git] / lib / libmes.c
index fe6d3a9a10dd253c13e611fd670e854543c559c5..0c32f3da9f15d5a874c5ae0bcfaf8f10d1dd38b5 100644 (file)
 
 #if POSIX
 // The Mes C Library defines and initializes these in crt1
-int g_stdin = STDIN;
-int g_stdout = STDOUT;
-int g_stderr = STDERR;
+int __stdin = STDIN;
+int __stdout = STDOUT;
+int __stderr = STDERR;
+
+int
+mes_open (char const *file_name, int flags, ...)
+{
+  va_list ap;
+  va_start (ap, flags);
+  int mask = va_arg (ap, int);
+  __ungetc_init ();
+  int r = open (file_name, flags, mask);
+  if (r > 2)
+    __ungetc_buf[r] = -1;
+  va_end (ap);
+  return r;
+ }
+
 #include <mes/eputs.c>
 #include <mes/oputs.c>
 #endif // POSIX