Commit graph

12 commits

Author SHA1 Message Date
Roger Crew
211c5fb608 abstract memory models for byte quota (BYTE_QUOTA_MODEL)
so that you can now have value_bytes()/object_bytes() pretend that
integers are 32 or 64 bits or whatever else you want.
2025-09-30 23:04:53 -07:00
H. Peter Anvin
ae919728c0 Resurrect autoconf, add u?int*_t types (0 / Type handling cleanup)
!(- use C99-like macros for printf)
- use [u]int*_t types (autoconf can verify they exist)
!(- abstract Num and Objid out)
!(- default to 64 bit integers)
!(- un-pointerify floating-point numbers (makes no sense on modern hardware))

(configure file is removed due to autoconf working again --wrog)

 - - from Rob Leslie <rob@mars.org>

Fix underquoted definition of MOO_ADD_CFLAGS

To stop aclocal from complaining, add m4 quoting to the definition of
MOO_ADD_CFLAGS in configure.in.

 - - from Kenny Root <kenny@the-b.org>:

Fix complaints clang has about test code

configure.in was using a test program that implicitly defined exit()
and also used "char *argv" instead of "char **argv"

Change-Id: I4731989bd5199a3bb187fd607cf6a685e0c699d5

 - - from wrog <crew@cs.stanford.edu>

Added checks/typedefs for 128-bit integer types
((u)int128_t, HAVE_INT128_T)

 - - from wrog <crew@cs.stanford.edu>

fix HAVE_INT32/64_T logic

Prior code would have failed in the case where one needed 'long long'
to get 64-bit ints (i.e., need to define (u)int64_t there as well).

Also, if we're going to declare the (u)int32_t type and all of the
PRI/SCN things ourselves, we should have HAVE_INT32_T #defined
to indicate that's all there now.  Likewise for HAVE_INT64_T.
This be useful later.

Also do *not* make !HAVE_INT64_T be an error since we eventually
want to have a viable 32-bit mode.
2025-09-29 00:44:47 -07:00
Roger Crew
fdeb879334 normalize .h wrappers
really need to be sure .h files are not getting multiply included
(I had thought this was already best-practice from the K&R days).

new rules for forming the symbol from the filename:
(1)  capitalize each word of the filename,
(2)  final 'H' is capitalized
  ... *unless* the rest of the filename is an initialism (AST, DB)
  which would make the resulting symbol all-caps (AST_H, DB_H)
  which we do not want (since it might collide with something real)
  so use a small 'h' in those cases (AST_h, DB_h)
(3) make sure this preprocessor symbol is used *NOWHERE* else.

    --wrog
2025-09-29 00:44:47 -07:00
Roger Crew
0cc95c3f6c remove trailing whitespace, fix comment weirdness, Makefile refill 2024-12-30 03:04:09 -08:00
Roger Crew
bd0aa66cf0 cvs log keep PARC entries only
All of the Sourceforge-era log entries are in git
so there's no point to having them repeated in the files.
2024-12-30 03:02:52 -08:00
Roger Crew
6ae0d3b667 cvs log reconciliation 2023-08-17 09:06:46 -07:00
Rob Leslie
49966e645e Avoid using uninitialized Program.cached_lineno_vec
find_line_number() in decompile.c could sometimes test the
.cached_lineno_vec member of Program objects when the member was
uninitialized and consequently return potentially erroneous results.
So we initialize the member now in new_program() at the same time
.cached_lineno_pc is initialized.
2008-06-18 00:05:18 -07:00
bjj
ab4361f05b Lineno computation could be wrong for forked vectors. 1999-08-16 04:15:13 +00:00
nop
c8db442950 Merge UNSAFE_OPTS (ref fixups); fix Log tag placement to fit CVS whims 1998-12-14 13:17:26 +00:00
nop
4e8941e8c2 Merge UNSAFE_OPTS (r5) after extensive testing. 1997-07-07 03:24:53 +00:00
nop
9cf5366eb0 GNU Indent normalization 1997-03-03 04:18:21 +00:00
nop
a515162931 Initial revision 1997-03-03 03:44:59 +00:00