Whitespace fixes

This commit is contained in:
Dale Weiler 2012-12-23 08:42:53 +00:00
parent e0ea101838
commit 4580dcf1ea
4 changed files with 107 additions and 107 deletions

View file

@ -153,9 +153,9 @@
* just plain textual subsitution.
*/
#ifdef _MSC_VER
# define snprintf(X, Y, Z, ...) _snprintf(X, Y, Z, __VA_ARGS__)
# define snprintf(X, Y, Z, ...) _snprintf(X, Y, Z, __VA_ARGS__)
/* strtof doesn't exist -> strtod does though :) */
# define strtof(X, Y) (float)(strtod(X, Y))
# define strtof(X, Y) (float)(strtod(X, Y))
#endif
/*

62
lexer.h
View file

@ -28,23 +28,23 @@ typedef struct token_s token;
#include "ast.h"
struct token_s {
int ttype;
int ttype;
char *value;
char *value;
union {
vector v;
int i;
double f;
int t; /* type */
} constval;
union {
vector v;
int i;
double f;
int t; /* type */
} constval;
#if 0
struct token_s *next;
struct token_s *prev;
struct token_s *next;
struct token_s *prev;
#endif
lex_ctx ctx;
lex_ctx ctx;
};
#if 0
@ -100,34 +100,34 @@ typedef struct {
} frame_macro;
typedef struct {
FILE *file;
const char *open_string;
size_t open_string_length;
size_t open_string_pos;
FILE *file;
const char *open_string;
size_t open_string_length;
size_t open_string_pos;
char *name;
size_t line;
size_t sline; /* line at the start of a token */
char *name;
size_t line;
size_t sline; /* line at the start of a token */
char peek[256];
size_t peekpos;
char peek[256];
size_t peekpos;
bool eof;
bool eof;
token tok; /* not a pointer anymore */
token tok; /* not a pointer anymore */
struct {
bool noops;
bool nodigraphs; /* used when lexing string constants */
bool preprocessing; /* whitespace and EOLs become actual tokens */
bool mergelines; /* backslash at the end of a line escapes the newline */
} flags;
struct {
bool noops;
bool nodigraphs; /* used when lexing string constants */
bool preprocessing; /* whitespace and EOLs become actual tokens */
bool mergelines; /* backslash at the end of a line escapes the newline */
} flags;
int framevalue;
frame_macro *frames;
char *modelname;
frame_macro *frames;
char *modelname;
size_t push_line;
size_t push_line;
} lex_file;
lex_file* lex_open (const char *file);

126
parser.c
View file

@ -113,34 +113,34 @@ static ast_expression* parse_expression(parser_t *parser, bool stopatcomma);
static void parseerror(parser_t *parser, const char *fmt, ...)
{
va_list ap;
va_list ap;
parser->errors++;
parser->errors++;
va_start(ap, fmt);
va_start(ap, fmt);
con_vprintmsg(LVL_ERROR, parser->lex->tok.ctx.file, parser->lex->tok.ctx.line, "parse error", fmt, ap);
va_end(ap);
va_end(ap);
}
/* returns true if it counts as an error */
static bool GMQCC_WARN parsewarning(parser_t *parser, int warntype, const char *fmt, ...)
{
bool r;
va_list ap;
va_start(ap, fmt);
r = vcompile_warning(parser->lex->tok.ctx, warntype, fmt, ap);
va_end(ap);
return r;
va_list ap;
va_start(ap, fmt);
r = vcompile_warning(parser->lex->tok.ctx, warntype, fmt, ap);
va_end(ap);
return r;
}
static bool GMQCC_WARN genwarning(lex_ctx ctx, int warntype, const char *fmt, ...)
{
bool r;
va_list ap;
va_start(ap, fmt);
r = vcompile_warning(ctx, warntype, fmt, ap);
va_end(ap);
return r;
va_list ap;
va_start(ap, fmt);
r = vcompile_warning(ctx, warntype, fmt, ap);
va_end(ap);
return r;
}
/**********************************************************************
@ -4600,56 +4600,56 @@ static void generate_checksum(parser_t *parser)
size_t i;
ast_value *value;
crc = progdefs_crc_both(crc, "\n/* file generated by qcc, do not modify */\n\ntypedef struct\n{");
crc = progdefs_crc_sum(crc, "\tint\tpad[28];\n");
/*
progdefs_crc_file("\tint\tpad;\n");
progdefs_crc_file("\tint\tofs_return[3];\n");
progdefs_crc_file("\tint\tofs_parm0[3];\n");
progdefs_crc_file("\tint\tofs_parm1[3];\n");
progdefs_crc_file("\tint\tofs_parm2[3];\n");
progdefs_crc_file("\tint\tofs_parm3[3];\n");
progdefs_crc_file("\tint\tofs_parm4[3];\n");
progdefs_crc_file("\tint\tofs_parm5[3];\n");
progdefs_crc_file("\tint\tofs_parm6[3];\n");
progdefs_crc_file("\tint\tofs_parm7[3];\n");
*/
for (i = 0; i < parser->crc_globals; ++i) {
if (!ast_istype(parser->globals[i], ast_value))
continue;
value = (ast_value*)(parser->globals[i]);
switch (value->expression.vtype) {
case TYPE_FLOAT: crc = progdefs_crc_both(crc, "\tfloat\t"); break;
case TYPE_VECTOR: crc = progdefs_crc_both(crc, "\tvec3_t\t"); break;
case TYPE_STRING: crc = progdefs_crc_both(crc, "\tstring_t\t"); break;
case TYPE_FUNCTION: crc = progdefs_crc_both(crc, "\tfunc_t\t"); break;
default:
crc = progdefs_crc_both(crc, "\tint\t");
break;
}
crc = progdefs_crc_both(crc, value->name);
crc = progdefs_crc_both(crc, ";\n");
}
crc = progdefs_crc_both(crc, "} globalvars_t;\n\ntypedef struct\n{\n");
for (i = 0; i < parser->crc_fields; ++i) {
if (!ast_istype(parser->fields[i], ast_value))
continue;
value = (ast_value*)(parser->fields[i]);
switch (value->expression.next->expression.vtype) {
case TYPE_FLOAT: crc = progdefs_crc_both(crc, "\tfloat\t"); break;
case TYPE_VECTOR: crc = progdefs_crc_both(crc, "\tvec3_t\t"); break;
case TYPE_STRING: crc = progdefs_crc_both(crc, "\tstring_t\t"); break;
case TYPE_FUNCTION: crc = progdefs_crc_both(crc, "\tfunc_t\t"); break;
default:
crc = progdefs_crc_both(crc, "\tint\t");
break;
}
crc = progdefs_crc_both(crc, value->name);
crc = progdefs_crc_both(crc, ";\n");
}
crc = progdefs_crc_both(crc, "} entvars_t;\n\n");
crc = progdefs_crc_both(crc, "\n/* file generated by qcc, do not modify */\n\ntypedef struct\n{");
crc = progdefs_crc_sum(crc, "\tint\tpad[28];\n");
/*
progdefs_crc_file("\tint\tpad;\n");
progdefs_crc_file("\tint\tofs_return[3];\n");
progdefs_crc_file("\tint\tofs_parm0[3];\n");
progdefs_crc_file("\tint\tofs_parm1[3];\n");
progdefs_crc_file("\tint\tofs_parm2[3];\n");
progdefs_crc_file("\tint\tofs_parm3[3];\n");
progdefs_crc_file("\tint\tofs_parm4[3];\n");
progdefs_crc_file("\tint\tofs_parm5[3];\n");
progdefs_crc_file("\tint\tofs_parm6[3];\n");
progdefs_crc_file("\tint\tofs_parm7[3];\n");
*/
for (i = 0; i < parser->crc_globals; ++i) {
if (!ast_istype(parser->globals[i], ast_value))
continue;
value = (ast_value*)(parser->globals[i]);
switch (value->expression.vtype) {
case TYPE_FLOAT: crc = progdefs_crc_both(crc, "\tfloat\t"); break;
case TYPE_VECTOR: crc = progdefs_crc_both(crc, "\tvec3_t\t"); break;
case TYPE_STRING: crc = progdefs_crc_both(crc, "\tstring_t\t"); break;
case TYPE_FUNCTION: crc = progdefs_crc_both(crc, "\tfunc_t\t"); break;
default:
crc = progdefs_crc_both(crc, "\tint\t");
break;
}
crc = progdefs_crc_both(crc, value->name);
crc = progdefs_crc_both(crc, ";\n");
}
crc = progdefs_crc_both(crc, "} globalvars_t;\n\ntypedef struct\n{\n");
for (i = 0; i < parser->crc_fields; ++i) {
if (!ast_istype(parser->fields[i], ast_value))
continue;
value = (ast_value*)(parser->fields[i]);
switch (value->expression.next->expression.vtype) {
case TYPE_FLOAT: crc = progdefs_crc_both(crc, "\tfloat\t"); break;
case TYPE_VECTOR: crc = progdefs_crc_both(crc, "\tvec3_t\t"); break;
case TYPE_STRING: crc = progdefs_crc_both(crc, "\tstring_t\t"); break;
case TYPE_FUNCTION: crc = progdefs_crc_both(crc, "\tfunc_t\t"); break;
default:
crc = progdefs_crc_both(crc, "\tint\t");
break;
}
crc = progdefs_crc_both(crc, value->name);
crc = progdefs_crc_both(crc, ";\n");
}
crc = progdefs_crc_both(crc, "} entvars_t;\n\n");
code_crc = crc;
code_crc = crc;
}
static parser_t *parser;

22
test.c
View file

@ -169,12 +169,12 @@ int task_pclose(FILE **handles) {
return status;
}
#else
# define _WIN32_LEAN_AND_MEAN
# define popen _popen
# define pclose _pclose
# include <windows.h>
# define _WIN32_LEAN_AND_MEAN
# define popen _popen
# define pclose _pclose
# include <windows.h>
# include <io.h>
# include <fcntl.h>
# include <fcntl.h>
/*
* Bidirectional piping implementation for windows using CreatePipe and DuplicateHandle +
* other hacks.
@ -199,10 +199,10 @@ int task_pclose(FILE **handles) {
return;
}
# ifdef __MINGW32__
# ifdef __MINGW32__
/* mingw32 has dirent.h */
# include <dirent.h>
# elif defined (_MSC_VER)
# include <dirent.h>
# elif defined (_MSC_VER)
/*
* visual studio lacks dirent.h it's a posix thing
* so we emulate it with the WinAPI.
@ -280,9 +280,9 @@ int task_pclose(FILE **handles) {
* Visual studio also lacks S_ISDIR for sys/stat.h, so we emulate this as well
* which is not hard at all.
*/
# undef S_ISDIR /* undef just incase */
# define S_ISDIR(X) ((X)&_S_IFDIR)
# endif
# undef S_ISDIR /* undef just incase */
# define S_ISDIR(X) ((X)&_S_IFDIR)
# endif
#endif
#define TASK_COMPILE 0