Commit Graph

  • 4f428ea6db
    `TRANSMUTE()`: Fix input type size not being properly checked. display_format_safety Avril 2021-07-19 22:28:22 +0100
  • 612f0fe02a
    `TRANSMUTE()`: Fix input type size not being properly checked. master Avril 2021-07-19 22:28:08 +0100
  • ae6e40453d
    `TRANSMUTE()`: Fix input type size not being properly checked. strings Avril 2021-07-19 22:27:49 +0100
  • 59439edefb
    Merge `TRANSMUTE()` macro from branch ref: strings/87e102ded928dcc4d9c4c79e22c68b709ea91c40. Avril 2021-07-19 22:22:38 +0100
  • f0b9d00705
    Merge `TRANSMUTE()` macro from branch ref: strings/87e102ded928dcc4d9c4c79e22c68b709ea91c40. Avril 2021-07-19 22:22:12 +0100
  • 87e102ded9 Added `TRANSMUTE(value, to_type)` macro, which performs a bit-cast on `value` to `to_type`. The sizes of the types must be the same or a compilation error is raised. There is currently no alignment restriction on the types (maybe there should be?). Avril 2021-07-19 22:20:01 +0100
  • ee7434e8bf Replace `Nx()` (temp value-assigning) macros with `Nv()` to avoid conflict with `TRACEx()` and for more clarity. Avril 2021-07-15 15:03:04 +0100
  • 6bd747a57a Replace `Nx()` (temp value-assigning) macros with `Nv()` to avoid conflict with `TRACEx()` and for more clarity. Avril 2021-07-15 15:03:25 +0100
  • a826612de5
    Replace `Nx()` (temp value-assigning) macros with `Nv()` to avoid conflict with `TRACEx()` and for more clarity. Avril 2021-07-15 15:02:05 +0100
  • 158b6e1fd4
    Added `_str_raw_to_cstrsa()`: Convert raw buffer to nul-terminated string that is dynamically allocated and statically held. (i.e. do not `free()`) Avril 2021-07-15 14:58:29 +0100
  • 267a4dae66 str_t impl: added alloc bare Avril 2021-07-15 01:50:19 +0100
  • 152e0aa8e7
    Start writing new string-slicing module. Avril 2021-07-14 23:16:22 +0100
  • aa94ab1622
    Failed string API attempt. Branching for rework. Avril 2021-07-14 22:55:53 +0100
  • a66da84047
    Fixed `deprecated` macro conflicts with attribute usage. (renamed to `_deprecated`) Avril 2021-07-14 02:45:33 +0100
  • 0db8d882d0
    Attempted rewrite of _display_get_fmt()`, it currently doesn"t work. To compile using the old functional but (probably) unsafe function, pass `-D_DEBUG_USE_UNSAFE_DISPLAY_FMT_ARGS` in `CFLAGS`. Avril 2021-07-14 02:45:02 +0100
  • dca7e48d4a
    `s_strncpy_n()`, `s_strncat_n()` trivial implementation. Avril 2021-07-14 01:59:23 +0100
  • eee5203ba9
    Start: double-bounded string mutation functions. Avril 2021-07-13 21:08:57 +0100
  • e9ccf5e2f2
    Basic implementation of more sensible string mutating functions for display format string creation. (`strncat_n()`, `strncpy_n()`.) Avril 2021-07-13 19:27:55 +0100
  • 8de332dbd4
    `_display_get_fmt()`: #undef function-specific macro at end of function Avril 2021-07-13 13:38:00 +0100
  • fdbdf5a7d8
    display: Added format string generator function based on display flags. Avril 2021-07-13 13:36:20 +0100
  • 1189d7fee8
    Fix `TODO()` macro to allow for printf-style args like the other `TRACEx()`-derrived macros. Avril 2021-07-13 02:28:09 +0100
  • 9d0747a5f7
    Moved display logic to seperate TU (display.c), added options for display output types (TODO) and (TODO) flags. Avril 2021-07-13 02:20:02 +0100
  • a5b3bc79b3
    Version bump: v0.1.0 Avril 2021-07-12 23:57:32 +0100
  • d7ddeaf2ca
    Use `slice_sted()` on base-removed slice to calculate offsets instead of using ad-hoc anonymous struct in-line. Avril 2021-07-12 23:51:45 +0100
  • 4465050a29
    Added basic reporting of haystack match offsets and failures. Avril 2021-07-12 23:10:54 +0100
  • 2ed48ec977
    Added COLD_BLOCK and HOT_BLOCK (for now), not sure if they work but they"re added. Avril 2021-07-12 20:24:32 +0100
  • 145781a293
    Added COLD_EXPR() and HOT_EXPR() macros that (ab)use label attrs. Not sure of a better way to mark blocks/expressions as `cold` :/ I dunno if `if(UNLIKELY(1))` would work. Avril 2021-07-12 20:21:14 +0100
  • 7fd570ff6f
    Change all `map_handle_err(map_free())` conditionals to `UNLIKELY` (`ifU()`), as it is unlikely an unmap will fail on a map that has already been established successfully. Avril 2021-07-12 20:04:37 +0100
  • 037a234953
    Unmap needle before returning from main after failed haystack maps. The process return value is still `PROG_RET_MAP_HAYSTACK_FAILED`, but a warning message is printed if unmapping the needle failed after the rollback. (this is unlikely) Avril 2021-07-12 20:02:18 +0100
  • 05b96a7e1b
    Prevent returning from main without unmapping all haystacks+needle on haystack unmap failure. Avril 2021-07-12 19:59:05 +0100
  • 2ce5037725
    TODO: Single-threaded mode: print aggregate result in a reasonable format Avril 2021-07-12 18:32:28 +0100
  • 63513504be
    Added show current logging level in usage output Avril 2021-07-12 18:26:03 +0100
  • 033ec9e902
    Added human-readable compilation date in usage output. Avril 2021-07-12 18:16:46 +0100
  • 4b6cc7034b
    Added descriptions for logging levels Avril 2021-07-12 18:01:51 +0100
  • 7295733087
    Up default logging level on release builds to `INFO` (from `WARN`). Avril 2021-07-12 17:51:15 +0100
  • 139d741bce
    Allow controling logging verbosity at runtime with `LOG_LEVEL=<name>` env-var. Default is `DEBUG` (trace) on debug builds, and `WARN` on release builds. Avril 2021-07-12 17:50:30 +0100
  • a3f4b80d54
    Disable `PARALLEL` as default feature (it"s unimplemented.) Avril 2021-07-12 01:09:27 +0100
  • 4b48c796a4
    Added single-threaded match passthrough aggregate reporting. Avril 2021-07-12 01:07:14 +0100
  • 947b801153
    Fix returning on error from vararg function `cmp_find_many()` not calling `va_end()` Avril 2021-07-11 21:49:04 +0100
  • 77c57d3624
    Remove extra loop counter data dependancy in `map_haystacks()` error rollback path. Avril 2021-07-11 21:40:27 +0100
  • b0623182be
    Added rollback to unmap previous haystack maps on error in `map_haystacks()` before returning. Avril 2021-07-11 20:06:19 +0100
  • d9eed51762
    Added non-TRACE info messages on needle+haystack un/mappings Avril 2021-07-11 02:41:26 +0100
  • d82407951a
    Mapping +unmappign haystacks from cl. Avril 2021-07-11 01:51:49 +0100
  • aff04b6d4b
    Reworked `PROG_RET_` to return negatives on internal, memory, or file/mapping failures, and to return the first haystack number that failed to match instead as return code (haystack numbers start at 1, since 0 is the needle). If all matched, return 0 from main(). Avril 2021-07-10 00:58:42 +0100
  • 254d9fbadc
    Added `cmp_find()` `cmp_find_many()` in "comp.c"/"comp.h". Avril 2021-07-10 00:49:21 +0100
  • b694d73167
    Added "useful" program error return codes `PROG_RET_` in "project.h". These can be used to specify which operation failed and on which input. Avril 2021-07-09 22:32:15 +0100
  • f056d09c2e
    Added `--help` option Avril 2021-07-09 22:30:07 +0100
  • f3538aa2db
    Instrumented map.c functions with TRACE()s Avril 2021-07-09 22:19:14 +0100
  • f8f5d9102e
    mmap() API facade. Avril 2021-07-09 19:54:46 +0100
  • 4dd4285ee0
    Add IGNORE_ALL() as alias to _drain() generic-project-skeleton Avril 2021-07-09 18:58:46 +0100
  • 6b66965424
    Added "debug build" to usage message when compiled as `debug` target. Avril 2021-07-09 18:18:31 +0100
  • a8e38d292e
    Added Makefile re-export (project.h) `PROG_COMPILED_TIMESTAMP` (u64): UTC unix timestamp (seconds) when TU was compiled. Avril 2021-07-09 18:15:48 +0100
  • 66f9b0ad55
    Added Makefile exports for metadata, and import header that creates better-useable C types from them Avril 2021-07-09 18:06:53 +0100
  • 56870bde45
    Added usage message, added usage-then-exit function for error and non-error cases Avril 2021-07-09 17:32:41 +0100
  • 701601f5cd
    added testing framework Avril 2021-07-09 16:54:31 +0100
  • 672502449b
    Moved string handling functions from version header into its own TU. Avril 2021-07-08 01:21:33 +0100
  • fb2fa5801e
    version to string functions `v_ctos{s,n,}()` working as intended Avril 2021-07-08 00:58:12 +0100
  • d9ccfa0d89
    added `bswap()` generic macro Avril 2021-07-07 23:55:04 +0100
  • 53355bb836
    added mman includes Avril 2021-07-07 03:10:51 +0100
  • d8202d7994
    Fortune for naka's current commit: Small blessing − 小吉 Avril 2021-07-07 03:04:48 +0100