mirror of
git://git.code.sf.net/p/sbcl/sbcl
synced 2026-09-10 07:26:40 -04:00
0.9.5.16:
Apparently FreeBSD 4 doesn't have putwc(), hence no boinkmarks
for the last few days. Add putwc() detection to grovel-features.sh,
and fallback to fputc() if putwc() isn't implemented.
(Actually untested on FreeBSD, but I figure it can't get any worse).
This commit is contained in:
parent
21c0ccdd7b
commit
fdccfb1135
|
|
@ -405,6 +405,20 @@ debug_function_from_pc (struct code* code, void *pc)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
sbcl_putwc(wchar_t c, FILE *file)
|
||||
{
|
||||
#ifdef LISP_FEATURE_OS_PROVIDES_PUTWC
|
||||
putwc(c, file);
|
||||
#else
|
||||
if (c < 256) {
|
||||
fputc(c, file);
|
||||
} else {
|
||||
fputc('?', file);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
static void
|
||||
print_string (lispobj *object)
|
||||
{
|
||||
|
|
@ -420,7 +434,7 @@ print_string (lispobj *object)
|
|||
wchar_t c = (wchar_t) data[i]; \
|
||||
if (c == '\\' || c == '"') \
|
||||
putchar('\\'); \
|
||||
putwc(c, stdout); \
|
||||
sbcl_putwc(c, stdout); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
|
|
|
|||
|
|
@ -233,7 +233,7 @@ os_validate(os_vm_address_t addr, os_vm_size_t len)
|
|||
(unsigned long) len, addr, actual);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
#ifdef LISP_FEATURE_ALPHA
|
||||
|
||||
len=(len+(os_vm_page_size-1))&(~(os_vm_page_size-1));
|
||||
|
|
|
|||
|
|
@ -22,3 +22,5 @@ featurep() {
|
|||
featurep os-provides-dlopen
|
||||
|
||||
featurep os-provides-dladdr
|
||||
|
||||
featurep os-provides-putwc
|
||||
|
|
|
|||
11
tools-for-build/os-provides-putwc-test.c
Normal file
11
tools-for-build/os-provides-putwc-test.c
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
/* test to build and run so that we know if we have putwc */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <wchar.h>
|
||||
|
||||
int main ()
|
||||
{
|
||||
wchar_t a = 'a';
|
||||
putwc(a, stdout);
|
||||
return 104;
|
||||
}
|
||||
|
|
@ -17,4 +17,4 @@
|
|||
;;; checkins which aren't released. (And occasionally for internal
|
||||
;;; versions, especially for internal versions off the main CVS
|
||||
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
|
||||
"0.9.5.15"
|
||||
"0.9.5.16"
|
||||
|
|
|
|||
Loading…
Reference in a new issue