summaryrefslogtreecommitdiff
path: root/test.cc
AgeCommit message (Collapse)Author
2023-05-01Use NASM on IA-32; Don't use libfmt in rttest; Fix uninitialised variable in ↵Gabriel Jensen
rttest; Make test support C++20; Fix out-of-bounds write in strcpy;
2023-04-27Update API-BREAK file; Don't call run-time functions from translation-time ↵0.1.0-devGabriel Jensen
functions; Remove Zap version tags; Implement memcpy on ARM; Update readme; Update logo; Implement memcpy on ARM64; Update run-time tests; Wrap arguments in parantheses in isnan; Return the one-after-the-end address of the destination from memfil and fil; Increment the extension version; Add metaprogramming class for determening pointer types: isptr; Fix run-time tests printing equal on inequality; Rename API-BREAK to FEATURE-WISHLIST; Don't build project in installation script; Add development branch 'development';
2023-04-24Rename C++ cp to cpy; Rename C++ eq to equ; Rename C++ srch to srh; Rename C ↵0.0.0Gabriel Jensen
cp and C++ bytecp to memcpy; Rename C eq and C++ byteeq to memequ; Rename C fill and C++ bytefill to memfil; Add function for copying strings: strcpy; Add function for searching strings: strsrh; Rename cpyret.dest to cpyret.dst; Add new headers to makefile; Rename math to mth; Rename root to nrt; Rename unreach to urch; Make likly and ulikly public; Add extver to C++; Fix fixflt macros; Rename trap to trp; Add functions for UTF-16 encoding/decoding; Add C++ variants to UTF-8, UTF-16, and Windows-1252 functions; Move public C++ definitions to implementation files ('.ii); Make C++ string functions call their C equivalent at run-time; Add wide-string and UTF-32-string functions to C; Rename typeq to typequ; Use built-in type _Bool in C; Fix language-detection macros; Don't typedef cpyret; Fix C-implementation of cpy; Fix C-implementation of syscall; Define wchr as wchar_t in C++; Add minimum-width character types; Add minimum-width integral types; Update type codes; Remove type identifiers; Install implementation files; Fix non-existent source being referenced on ARM64; Use trailing return types; Fix isflttyp; Add more fixed-width floating-point types; Add more fixed-width integer types; Make ifconsteval public in the form of a compile-time function; Don't typedef pair; Add mathematical functions to C++; Add NaN constants; Add infinity constants to C; Add mathematical function for natural logarithm (unimplemented); Add mathematical function for binary logarithm (unimplemented); Add mathematical function for common logarithm (unimplemented); Add mathematical function for cube root (unimplemented); Add mathematical functions for distance (unimplemented); Add mathematical function for arc cosine (unimplemented); Add mathematical function for arc sine (unimplemented); Add mathematical function for arc tangens (unimplemented); Add mathematical function for logarithm (unimplemented)s Add mathematical functions for dot product; Add structures for vectors; Add classes for vector; Add mathematical function for fourth root (unimplemented); Assert arithmetic types in mathematical templates; Rename sign to sgn and usign to usgn; Add functions for adding vectors; Add functions for subtracting vectors; Implement 'any' architecture using C++; Add metaprogramming class for determening signed and unsigned types; Add UTF-8 encoders/decoders to C++; Add format to C++; Change type of fmtlen to sz; Remove attr prefix from attributes; Support shared libraries; Rename unuse to nuse; Remove sys and move members to bs; Add types for system call return values and system call identifier; Rename C srch and C++ bytesrch to memsrh; Restructure headers and implementations files; Add constant that defines the largest Unicode codepoint: unimax; Clean up code; Use binary literals; Rename is*typ to is*; Add functions for determening non-numbers; Add minimum-value and maximum-value constants to floating-point types; Define dos on DOS-like systems; Don't use file extensions for C++ headers; Update type codes; Change namespace to zp; Rename noret to nret; Rename project to zp (from zap); Add readme; Reset version epoch; Add logo; Add csys logo; Add null pointer type: nullptrtyp; Rename cmp to impl; Rename lang to std; Rename syscall to syscl; Add more comments to headers; Rename nullptr to nulptr; Add attribute for warning against unused results; Change type of ver and extver to i04m; Add type for storing the result of pointer subtraction: ptrdif; Rename ptr to intptr; Update gitignore; Rewrite test program;
2023-04-10Move C++ facilities to their own headers; Add more C++ variants; Add ↵Gabriel Jensen
fixed-width floating-point types; Make minimum-width integer types fixed-width; Update code style; Add new module 'sys'; Add syscall function; Add option to disable sys module; Add function to mark unreachable code; Make trap public; Remove version checks; Add floating-point mathematical functions; Add compiler detection macros; Fragmentate headers; Add character sign detection; (Temporarily) remove support for MIPS, POWER, and SPARC; Make noret public; Add attributes; Use MSVC constructs; Make restr public; Fix C++ srch; Install new headers; Add bytewise overloads for C++ memory functions; Add metaprogramming class for removing type qualifiers; Overload C++ maxval and minval for character types and the boolean type; Add wchr type to C; Add macros for detecting the language standard;
2022-10-03Update readme; Fix typo in makefile; Include headers inside header guard; ↵Gabriel Jensen
Remove unneeded includes; Rename private include directory: 'include-priv' => 'include-private'; Remove assembly support from (public) headers; Remove fastimpl (assembly algorithms are still used); Add copyright/license notices to makefiles; Seperate sources according to header; Require GNU Make; Move (most) C-implementations into a seperate project: zapx; Restructure assembly; Implement strfill in assembly; Use new versioning system (api.ver); Remove documentation; Add features from latest standard; Temporarily remove i386 implementations; Update readme format; Update changelog format; Remove impl; Remove stdver; Readd ver; Use git tagging;
2022-07-28Remove type specifier from version macro; Add mathematical functions abs and ↵Gabriel Jensen
fma; Update documentation; Remove nothrw attribute from foreach; Remove UB from foreach test; Fix parameter mismatch in foreach test; Use unsigned char instead of uint_least8_t; Remove unnecessary casts; Add new headers: 'zap/math.h' (for mathematical functions), 'zap/mem.h' (for memory sequence functions); Restructure makefile; Fix not using INT_LEAST8_MAX and INT_LEAST8_MIN instead of INT8_MAX and INT8_MIN; Remove '/build' from gitignore;
2022-07-19Add function foreach: Run function on each element; Use directive globl ↵Gabriel Jensen
instead of global in assembly; Use SIZE_MAX instead of negative one; Remove asflags from makefile; Don't require GNU Make; Change the type of fndbyte: (size_t (void const *,size_t,uint_least8_t)) => (size_t (void const *,size_t,unsigned char)); Change the type of memfill: (void (void *,size_t,uint_least8_t)) => (void (void *,size_t,unsigned char)); Update readme (add documentation for some functions); Update susinfo symbol names;
2022-07-11Fix install target; Remove type literals;Gabriel Jensen
2022-07-11memdup: Use sus_unlikely instead of __builtin_expect; Rename project to zap ↵Gabriel Jensen
(from rgo); Remove global license file (useless with MPL); Migrate test to C++ (for reasons which will be revealed later); Restructure headers; Add include guards to the private header; Add attribute useret to functions; Require GNU Make; Compile position independent code; Update readme;