projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Compute single-value-type correctly in the absence of required values
[sbcl.git]
/
src
/
runtime
/
parse.c
diff --git
a/src/runtime/parse.c
b/src/runtime/parse.c
index
b4218e5
..
1edfe18
100644
(file)
--- a/
src/runtime/parse.c
+++ b/
src/runtime/parse.c
@@
-14,9
+14,13
@@
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
-#include <signal.h>
#include "sbcl.h"
#include "sbcl.h"
+#if defined(LISP_FEATURE_WIN32) && defined(LISP_FEATURE_SB_THREAD)
+#include "pthreads_win32.h"
+#else
+#include <signal.h>
+#endif
#include "runtime.h"
#if defined(LISP_FEATURE_SB_LDB)
#include "runtime.h"
#if defined(LISP_FEATURE_SB_LDB)
@@
-32,6
+36,7
@@
#include "arch.h"
#include "search.h"
#include "thread.h"
#include "arch.h"
#include "search.h"
#include "thread.h"
+#include "pseudo-atomic.h"
#include "genesis/simple-fun.h"
#include "genesis/fdefn.h"
#include "genesis/simple-fun.h"
#include "genesis/fdefn.h"
@@
-44,10
+49,10
@@
static void skip_ws(char **ptr)
(*ptr)++;
}
(*ptr)++;
}
-static boolean string_to_long(char *token, long *value)
+static boolean string_to_long(char *token, uword_t *value)
{
int base, digit;
{
int base, digit;
- long num;
+ uword_t num;
char *ptr;
if (token == 0)
char *ptr;
if (token == 0)
@@
-191,11
+196,11
@@
char *token;
}
#endif
}
#endif
-long parse_number(ptr)
+uword_t parse_number(ptr)
char **ptr;
{
char *token = parse_token(ptr);
char **ptr;
{
char *token = parse_token(ptr);
- long result;
+ uword_t result;
if (token == NULL) {
printf("expected a number\n");
if (token == NULL) {
printf("expected a number\n");
@@
-228,7
+233,7
@@
char **ptr;
result &= ~7;
}
else {
result &= ~7;
}
else {
- long value;
+ uword_t value;
if (!string_to_long(token, &value)) {
printf("invalid number: ``%s''\n", token);
throw_to_monitor();
if (!string_to_long(token, &value)) {
printf("invalid number: ``%s''\n", token);
throw_to_monitor();
@@
-311,9
+316,9
@@
char **ptr;
{
struct thread *thread=arch_os_get_current_thread();
char *token = parse_token(ptr);
{
struct thread *thread=arch_os_get_current_thread();
char *token = parse_token(ptr);
- long pointer;
+ uword_t pointer;
lispobj result;
lispobj result;
- long value;
+ uword_t value;
if (token == NULL) {
printf("expected an object\n");
if (token == NULL) {
printf("expected an object\n");