saltwater 0.11.0

A C compiler written in Rust, with a focus on good error messages.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#ifndef __STDC_STDARG_H
#define __STDC_STDARG_H

// va_list is a built-in type
// TODO: this gives awful error messages because I don't show the macros it was expanded from
// In the meantime, make the error message all one token so it will show up in the parse error.
#define va_arg(ap, type) (va_arg not_currently_supported_by_saltwater)
#define va_copy(dst, src) (va_copy not_currently_supported_by_saltwater)
#define va_end(ap) (va_end not_currently_supported_by_saltwater)
#define va_start(ap, named_param) (va_start not_currently_supported_by_saltwater)

typedef __builtin_va_list va_list;
// glibc is awful and I hate it
typedef __builtin_va_list __gnuc_va_list;

#endif