Commit 3377bb835c2d8a32607c8d543ea5696c970e1a4b

Thomas de Grivel 2023-12-22T03:48:47

wip demo_gl

diff --git a/libc3/struct.c b/libc3/struct.c
index e5d3674..c223397 100644
--- a/libc3/struct.c
+++ b/libc3/struct.c
@@ -43,22 +43,20 @@ s_struct * struct_allocate (s_struct *s)
 void struct_clean (s_struct *s)
 {
   f_clean clean;
-  s8 *data;
   uw i;
   const s_sym *sym;
   assert(s);
-  data = s->data;
-  if (data) {
+  if (s->data) {
     i = 0;
     while (i < s->type.map.count) {
       if (tag_type(s->type.map.value + i, &sym) &&
           sym_to_clean(sym, &clean) &&
           clean)
-        clean(data + s->type.offset[i]);
+        clean((s8 *) s->data + s->type.offset[i]);
       i++;
     }
     if (s->free_data)
-      free(data);
+      free(s->data);
   }
   if (s->tag) {
     i = 0;
diff --git a/libc3/tag.c b/libc3/tag.c
index a2a2066..be97bbe 100644
--- a/libc3/tag.c
+++ b/libc3/tag.c
@@ -635,11 +635,10 @@ s_tag * tag_paren (const s_tag *tag, s_tag *dest)
 
 uw * tag_size (const s_tag *tag, uw *dest)
 {
-  const s_sym *type = NULL;
+  const s_sym *type;
   uw tmp = 0;
   assert(tag);
-  type = tag_type_to_sym(tag->type);
-  if (! type ||
+  if (! tag_type(tag, &type) ||
       ! sym_type_size(type, &tmp))
     return NULL;
   *dest = tmp;
@@ -660,7 +659,7 @@ bool tag_to_const_pointer (const s_tag *tag, const s_sym *type,
     return false;
   }
   switch (tag_type) {
-  case TAG_ARRAY:     *dest = tag->data.array.data;  return true;
+  case TAG_ARRAY:     *dest = &tag->data.array;      return true;
   case TAG_BOOL:      *dest = &tag->data.bool;       return true;
   case TAG_CALL:      *dest = &tag->data.call;       return true;
   case TAG_CFN:       *dest = &tag->data.cfn;        return true;
@@ -943,7 +942,7 @@ bool tag_to_pointer (s_tag *tag, const s_sym *type, void **dest)
   }
   switch (tag_type) {
   case TAG_VOID:      *dest = NULL;                  return true;
-  case TAG_ARRAY:     *dest = tag->data.array.data;  return true;
+  case TAG_ARRAY:     *dest = &tag->data.array;      return true;
   case TAG_BOOL:      *dest = &tag->data.bool;       return true;
   case TAG_CALL:      *dest = &tag->data.call;       return true;
   case TAG_CFN:       *dest = &tag->data.cfn;        return true;
diff --git a/libc3/window/sdl2/demo/window_sdl2_demo.c b/libc3/window/sdl2/demo/window_sdl2_demo.c
index 9f93613..e087f96 100644
--- a/libc3/window/sdl2/demo/window_sdl2_demo.c
+++ b/libc3/window/sdl2/demo/window_sdl2_demo.c
@@ -14,9 +14,10 @@
 #include <stdlib.h>
 #include <libc3/c3.h>
 #include "../../window.h"
-#include "../window_sdl2.h"
+#include "../gl_ortho.h"
 #include "../sdl2_font.h"
 #include "../sdl2_sprite.h"
+#include "../window_sdl2.h"
 #include "bg_rect.h"
 #include "lightspeed.h"
 #include "toasters.h"
@@ -27,6 +28,7 @@
 
 //s_sdl2_font g_font_computer_modern;
 s_sdl2_font g_font_courier_new = {0};
+s_gl_ortho  g_ortho = {0};
 
 static bool window_sdl2_demo_button (s_window_sdl2 *window, u8 button,
                                      sw x, sw y);
@@ -133,6 +135,8 @@ bool window_sdl2_demo_load (s_window_sdl2 *window)
     assert(window->sequence_count == WINDOW_SDL2_DEMO_SEQUENCE_COUNT);
     return false;
   }
+  if (! gl_ortho_init(&g_ortho))
+    return false;
   if (! sdl2_font_init(&g_font_courier_new,
                        "fonts/Courier New/Courier New.ttf"))
     return false;
@@ -218,11 +222,7 @@ bool window_sdl2_demo_render (s_window_sdl2 *window, void *context)
   if (! seq->render(seq, window, context))
     return false;
   /* 2D */
-  glMatrixMode(GL_PROJECTION);
-  glLoadIdentity();
-  glOrtho(0, window->w, 0, window->h, -1, 1);
-  glMatrixMode(GL_MODELVIEW);
-  glLoadIdentity();
+  gl_ortho_render(&g_ortho);
   glDisable(GL_DEPTH_TEST);
   sdl2_font_set_size(&g_font_courier_new, 20, window->dpi);
   render_text(&g_font_courier_new, 20.0f, 30.0f, seq->title);
@@ -240,6 +240,7 @@ bool window_sdl2_demo_render (s_window_sdl2 *window, void *context)
   s8 fps[32];
   snprintf(fps, sizeof(fps), "%.2f", (f64) seq->frame / seq->t);
   render_text(&g_font_courier_new, 20, window->h - 30, fps);
+  gl_ortho_render_end(&g_ortho);
   return true;
 }
 
@@ -257,6 +258,7 @@ void window_sdl2_demo_unload (s_window_sdl2 *window)
 {
   assert(window);
   (void) window;
+  gl_ortho_clean(&g_ortho);
   sdl2_font_clean(&g_font_courier_new);
   sdl2_sprite_clean(&g_sprite_toaster);
   sdl2_sprite_clean(&g_sprite_toast);
diff --git a/libc3/window/sdl2/gl_matrix_4d.c b/libc3/window/sdl2/gl_matrix_4d.c
index f176272..1fa3096 100644
--- a/libc3/window/sdl2/gl_matrix_4d.c
+++ b/libc3/window/sdl2/gl_matrix_4d.c
@@ -118,7 +118,22 @@ s_gl_matrix_4d * gl_matrix_4d_ortho (s_gl_matrix_4d *m, f64 x1, f64 x2,
                                      f64 y1, f64 y2, f64 clip_z_near,
                                      f64 clip_z_far)
 {
-  
+  f64 dx;
+  f64 dy;
+  f64 dz;
+  s_gl_matrix_4d ortho = {0};
+  assert(m);
+  dx = x2 - x1;
+  dy = y2 - y1;
+  dz = clip_z_far - clip_z_near;
+  ortho.xx = 2.0 / dx;
+  ortho.yy = 2.0 / dy;
+  ortho.zz = -2.0 / dz;
+  ortho.tx = -((x1 + x2) / dx);
+  ortho.ty = -((y1 + y2) / dy);
+  ortho.tz = -((clip_z_near + clip_z_far) / dz);
+  gl_matrix_4d_product(m, &ortho);
+  return m;
 }
 
 s_gl_matrix_4d * gl_matrix_4d_perspective (s_gl_matrix_4d *m, f64 fov_y,
diff --git a/libc3/window/sdl2/gl_ortho.c b/libc3/window/sdl2/gl_ortho.c
index e23de22..73c5d4a 100644
--- a/libc3/window/sdl2/gl_ortho.c
+++ b/libc3/window/sdl2/gl_ortho.c
@@ -35,18 +35,19 @@ void gl_ortho_delete (s_gl_ortho *ortho)
   free(ortho);
 }
 
-s_gl_ortho * gl_ortho_init (s_gl_ortho *ortho, uw w, uw h)
+s_gl_ortho * gl_ortho_init (s_gl_ortho *ortho)
 {
   GLint success;
   u32 vertex_shader;
   assert(ortho);
   ortho->clip_z_far = 1.0;
   ortho->clip_z_near = -1.0;
-  ortho->fov_y = 90.0;
   ortho->position.x = 0.0;
   ortho->position.y = 0.0;
   ortho->position.z = 0.0;
-  ortho->rotation = 0.0;
+  ortho->rotation.x = 0.0;
+  ortho->rotation.y = 0.0;
+  ortho->rotation.z = 0.0;
   vertex_shader = glCreateShader(GL_VERTEX_SHADER);
   glShaderSource(vertex_shader, 1, &g_gl_ortho_vertex_shader_src,
                  NULL);
@@ -67,7 +68,7 @@ s_gl_ortho * gl_ortho_init (s_gl_ortho *ortho, uw w, uw h)
   return ortho;
 }
 
-s_gl_ortho * gl_ortho_new (uw w, uw h)
+s_gl_ortho * gl_ortho_new (void)
 {
   s_gl_ortho *ortho;
   ortho = calloc(1, sizeof(s_gl_ortho));
@@ -75,7 +76,7 @@ s_gl_ortho * gl_ortho_new (uw w, uw h)
     err_puts("gl_ortho_new: failed to allocate memory");
     return NULL;
   }
-  if (! gl_ortho_init(ortho, w, h)) {
+  if (! gl_ortho_init(ortho)) {
     free(ortho);
     return NULL;
   }
@@ -108,11 +109,3 @@ void gl_ortho_render_end (s_gl_ortho *ortho)
   (void) ortho;
   glUseProgram(0);
 }
-
-s_gl_ortho * gl_ortho_set_aspect_ratio (s_gl_ortho *ortho, uw w,
-                                          uw h)
-{
-  assert(ortho);
-  ortho->aspect_ratio = (f64) (w ? w : 1) / (h ? h : 1);
-  return ortho;
-}
diff --git a/libc3/window/sdl2/gl_ortho.h b/libc3/window/sdl2/gl_ortho.h
new file mode 100644
index 0000000..6ccde76
--- /dev/null
+++ b/libc3/window/sdl2/gl_ortho.h
@@ -0,0 +1,31 @@
+/* c3
+ * Copyright 2022,2023 kmx.io <contact@kmx.io>
+ *
+ * Permission is hereby granted to use this software granted the above
+ * copyright notice and this permission paragraph are included in all
+ * copies and substantial portions of this software.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS-IS" WITHOUT ANY GUARANTEE OF
+ * PURPOSE AND PERFORMANCE. IN NO EVENT WHATSOEVER SHALL THE
+ * AUTHOR BE CONSIDERED LIABLE FOR THE USE AND PERFORMANCE OF
+ * THIS SOFTWARE.
+ */
+#ifndef GL_ORTHO_H
+#define GL_ORTHO_H
+
+#include "types.h"
+
+/* Stack-allocation compatible functions, call gl_ortho_clean
+   after use. */
+void         gl_ortho_clean (s_gl_ortho *ortho);
+s_gl_ortho * gl_ortho_init (s_gl_ortho *ortho);
+
+/* Heap-allocation functions, call gl_ortho_delete after use. */
+void         gl_ortho_delete (s_gl_ortho *ortho);
+s_gl_ortho * gl_ortho_new (void);
+
+/* Operators. */
+void         gl_ortho_render (s_gl_ortho *ortho);
+void         gl_ortho_render_end (s_gl_ortho *ortho);
+
+#endif /* GL_ORTHO_H */
diff --git a/libc3/window/sdl2/gl_sphere.c b/libc3/window/sdl2/gl_sphere.c
index b4dba94..496f193 100644
--- a/libc3/window/sdl2/gl_sphere.c
+++ b/libc3/window/sdl2/gl_sphere.c
@@ -46,7 +46,8 @@ s_gl_sphere * gl_sphere_init (s_gl_sphere *sphere, uw seg_u, uw seg_v)
     seg_v = 2;
   tmp.segments_u = seg_u;
   tmp.segments_v = seg_v;
-  if (! gl_object_allocate(&tmp.object, seg_u * (seg_v + 2),
+  if (! gl_object_init(&tmp.object) ||
+      ! gl_object_allocate(&tmp.object, seg_u * (seg_v + 2),
                            2 * seg_u * (seg_v + 1)))
     return NULL;
   vertex = tmp.object.vertex.data;
diff --git a/libc3/window/sdl2/sources.mk b/libc3/window/sdl2/sources.mk
index 4201ba3..20595df 100644
--- a/libc3/window/sdl2/sources.mk
+++ b/libc3/window/sdl2/sources.mk
@@ -18,6 +18,7 @@ SOURCES = \
 	"gl_cylinder.c" \
 	"gl_matrix_4d.c" \
 	"gl_object.c" \
+	"gl_ortho.c" \
 	"gl_point_2d.c" \
 	"gl_point_3d.c" \
 	"gl_sphere.c" \
diff --git a/libc3/window/sdl2/sources.sh b/libc3/window/sdl2/sources.sh
index 89c030d..eae48ec 100644
--- a/libc3/window/sdl2/sources.sh
+++ b/libc3/window/sdl2/sources.sh
@@ -1,3 +1,3 @@
 # sources.sh generated by update_sources
 HEADERS='gl_camera.h gl_cylinder.h gl_matrix_3d.h gl_matrix_4d.h gl_object.h gl_point_2d.h gl_point_3d.h gl_sphere.h sdl2_font.h sdl2_sprite.h types.h window_sdl2.h '
-SOURCES='gl_camera.c gl_cylinder.c gl_matrix_4d.c gl_object.c gl_point_2d.c gl_point_3d.c gl_sphere.c sdl2_font.c sdl2_sprite.c window_sdl2.c '
+SOURCES='gl_camera.c gl_cylinder.c gl_matrix_4d.c gl_object.c gl_ortho.c gl_point_2d.c gl_point_3d.c gl_sphere.c sdl2_font.c sdl2_sprite.c window_sdl2.c '
diff --git a/sources.mk b/sources.mk
index b96c995..b56cd97 100644
--- a/sources.mk
+++ b/sources.mk
@@ -102,7 +102,6 @@ C3_C_SOURCES = \
 	"ic3/linenoise.c" \
 	"ic3/buf_wineditline.c" \
 	"ic3/buf_wineditline.h" \
-	"libc3/array.c" \
 	"libc3/struct.c" \
 	"libc3/abs.c" \
 	"libc3/buf.c" \
@@ -119,7 +118,6 @@ C3_C_SOURCES = \
 	"libc3/set_item__fact.h" \
 	"libc3/set__fact.c" \
 	"libc3/call.c" \
-	"libc3/buf_parse.c" \
 	"libc3/arg.c" \
 	"libc3/binding.c" \
 	"libc3/c3.c" \
@@ -369,6 +367,7 @@ C3_C_SOURCES = \
 	"libc3/buf_inspect_s.c.in" \
 	"libc3/tag.h" \
 	"libc3/list_init.c" \
+	"libc3/array.c" \
 	"libc3/env.c" \
 	"libc3/tag_shift_right.c" \
 	"libc3/error_handler.h" \
@@ -384,6 +383,7 @@ C3_C_SOURCES = \
 	"libc3/buf_inspect_u.h.in" \
 	"libc3/env.h" \
 	"libc3/c3.h" \
+	"libc3/list.c" \
 	"libc3/arg.h" \
 	"libc3/buf_inspect_u_base.c.in" \
 	"libc3/buf_inspect_u_base.h.in" \
@@ -455,15 +455,15 @@ C3_C_SOURCES = \
 	"libc3/window/sdl2/gl_cylinder.h" \
 	"libc3/window/sdl2/gl_sphere.h" \
 	"libc3/window/sdl2/gl_point_2d.h" \
+	"libc3/window/sdl2/gl_matrix_4d.c" \
 	"libc3/window/sdl2/gl_object.c" \
 	"libc3/window/sdl2/gl_object.h" \
 	"libc3/window/sdl2/gl_point_3d.h" \
 	"libc3/window/sdl2/gl_matrix_4d.h" \
 	"libc3/window/sdl2/gl_matrix_3d.h" \
-	"libc3/window/sdl2/gl_matrix_4d.c" \
+	"libc3/window/sdl2/gl_ortho.c" \
 	"libc3/array.h" \
 	"libc3/u16.c" \
-	"libc3/list.c" \
 	"libc3/u.h.in" \
 	"libc3/sha1.h" \
 	"libc3/file.h" \
@@ -473,6 +473,7 @@ C3_C_SOURCES = \
 	"libc3/map.h" \
 	"libc3/sym.c" \
 	"libc3/struct_type.h" \
+	"libc3/buf_parse.c" \
 	"libc3/u32.c" \
 	"libc3/license.c" \
 	"libc3/file.c" \
@@ -602,6 +603,11 @@ C3_OTHER_SOURCES = \
 	"lib/c3/0.1/c3.facts" \
 	"lib/c3/0.1/array.facts" \
 	"lib/c3/0.1/gl/sphere.facts" \
+	"lib/c3/0.1/gl/triangle.facts" \
+	"lib/c3/0.1/gl/vertex.facts" \
+	"lib/c3/0.1/gl/point2d.facts" \
+	"lib/c3/0.1/gl/point3d.facts" \
+	"lib/c3/0.1/gl/object.facts" \
 	"lib/c3/0.1/list.facts" \
 	"lib/c3/0.1/map.facts" \
 	"lib/c3/0.1/ptr_free.facts" \
@@ -610,8 +616,10 @@ C3_OTHER_SOURCES = \
 	"lib/c3/0.1/u32.facts" \
 	"lib/c3/0.1/u16.facts" \
 	"lib/c3/0.1/u64.facts" \
+	"lib/c3/0.1/f64.facts" \
 	"lib/c3/0.1/uw.facts" \
 	"lib/c3/0.1/integer.facts" \
+	"lib/c3/0.1/f32.facts" \
 	"lib/c3/0.1/s32.facts" \
 	"lib/c3/0.1/s64.facts" \
 	"lib/c3/0.1/s8.facts" \
diff --git a/sources.sh b/sources.sh
index 551cb78..4a80a00 100644
--- a/sources.sh
+++ b/sources.sh
@@ -1,7 +1,7 @@
 # sources.sh generated by update_sources
 C3_CONFIGURES='c3c/configure c3s/configure c3s/sources.sh c3s/update_sources ic3/configure ic3/sources.sh ic3/update_sources libc3/sources.sh libc3/configure libc3/update_sources libc3/window/cairo/xcb/configure libc3/window/cairo/xcb/update_sources libc3/window/cairo/xcb/demo/update_sources libc3/window/cairo/xcb/demo/configure libc3/window/cairo/xcb/demo/sources.sh libc3/window/cairo/xcb/sources.sh libc3/window/cairo/configure libc3/window/cairo/quartz/configure libc3/window/cairo/quartz/sources.sh libc3/window/cairo/quartz/update_sources libc3/window/cairo/quartz/demo/configure libc3/window/cairo/quartz/demo/sources.sh libc3/window/cairo/quartz/demo/update_sources libc3/window/cairo/demo/configure libc3/window/cairo/demo/sources.sh libc3/window/cairo/demo/update_sources libc3/window/cairo/update_sources libc3/window/cairo/sources.sh libc3/window/cairo/win32/configure libc3/window/cairo/win32/demo/sources.sh libc3/window/cairo/win32/demo/configure libc3/window/cairo/win32/demo/update_sources libc3/window/cairo/win32/sources.sh libc3/window/cairo/win32/update_sources libc3/window/configure libc3/window/sources.sh libc3/window/update_sources libc3/window/sdl2/configure libc3/window/sdl2/demo/configure libc3/window/sdl2/demo/macos/configure libc3/window/sdl2/demo/sources.sh libc3/window/sdl2/demo/update_sources libc3/window/sdl2/sources.sh libc3/window/sdl2/update_sources libtommath/configure libtommath/sources.sh libtommath/update_sources test/sources.sh test/configure test/update_sources ucd2c/configure '
 C3_MAKEFILES='c3c/Makefile c3s/Makefile c3s/sources.mk ic3/Makefile ic3/sources.mk libc3/gen.mk libc3/sources.mk libc3/Makefile libc3/window/cairo/xcb/Makefile libc3/window/cairo/xcb/sources.mk libc3/window/cairo/xcb/demo/sources.mk libc3/window/cairo/xcb/demo/Makefile libc3/window/cairo/Makefile libc3/window/cairo/quartz/Makefile libc3/window/cairo/quartz/sources.mk libc3/window/cairo/quartz/demo/Makefile libc3/window/cairo/quartz/demo/sources.mk libc3/window/cairo/demo/Makefile libc3/window/cairo/demo/sources.mk libc3/window/cairo/sources.mk libc3/window/cairo/win32/Makefile libc3/window/cairo/win32/demo/Makefile libc3/window/cairo/win32/demo/sources.mk libc3/window/cairo/win32/sources.mk libc3/window/Makefile libc3/window/sources.mk libc3/window/sdl2/Makefile libc3/window/sdl2/demo/Makefile libc3/window/sdl2/demo/macos/Makefile libc3/window/sdl2/demo/sources.mk libc3/window/sdl2/sources.mk libtommath/Makefile libtommath/sources.mk test/Makefile test/sources.mk ucd2c/Makefile '
-C3_C_SOURCES='c3c/c3c.c c3s/buf_readline.c c3s/c3s.c c3s/buf_readline.h ic3/ic3.c ic3/buf_linenoise.c ic3/config.h ic3/buf_linenoise.h ic3/linenoise.c ic3/buf_wineditline.c ic3/buf_wineditline.h libc3/array.c libc3/struct.c libc3/abs.c libc3/buf.c libc3/set__tag.c libc3/set_item__tag.c libc3/set__tag.h libc3/set_item__tag.h libc3/set_cursor__tag.h libc3/set_cursor__tag.c libc3/skiplist_node__fact.c libc3/skiplist_node__fact.h libc3/skiplist__fact.c libc3/skiplist__fact.h libc3/set_item__fact.h libc3/set__fact.c libc3/call.c libc3/buf_parse.c libc3/arg.c libc3/binding.c libc3/c3.c libc3/set_item__fact.c libc3/set__fact.h libc3/set_cursor__fact.c libc3/set_cursor__fact.h libc3/uw.c libc3/sw.h libc3/uw.h libc3/sw.c libc3/buf_parse_uw.h libc3/buf_parse_uw.c libc3/buf_parse_sw.h libc3/buf_parse_sw.c libc3/buf_inspect_uw_hexadecimal.h libc3/buf_inspect_uw_hexadecimal.c libc3/buf_inspect_uw_decimal.h libc3/buf_inspect_uw_decimal.c libc3/u64.h libc3/bool.c libc3/bool.h libc3/buf_file.c libc3/buf_inspect_uw_octal.h libc3/buf_inspect_uw_octal.c libc3/buf_inspect_uw_binary.h libc3/buf_inspect_uw.h libc3/buf_inspect_uw_binary.c libc3/buf_inspect_uw.c libc3/buf_inspect_sw_hexadecimal.h libc3/buf_inspect_sw_hexadecimal.c libc3/buf_inspect_sw_decimal.h libc3/buf_inspect_sw_decimal.c libc3/buf_inspect_sw_octal.h libc3/buf_inspect_sw_octal.c libc3/buf_inspect_sw_binary.h libc3/buf_parse.h libc3/buf.h libc3/buf_save.c libc3/facts_spec_cursor.c libc3/buf_inspect_sw_binary.c libc3/buf_inspect_sw.h libc3/buf_inspect_sw.c libc3/u64.c libc3/s64.h libc3/s64.c libc3/buf_parse_u64.h libc3/buf_parse_u64.c libc3/buf_parse_s64.h libc3/buf_parse_s64.c libc3/buf_inspect_u64_hexadecimal.h libc3/buf_inspect_u64_hexadecimal.c libc3/buf_inspect_u64_decimal.h libc3/buf_inspect_u64_decimal.c libc3/u32.h libc3/buf_file.h libc3/buf_save.h libc3/call.h libc3/buf_inspect_u64_octal.h libc3/buf_inspect_u64_octal.c libc3/buf_inspect_u64_binary.h libc3/buf_parse_s.c.in libc3/buf_inspect_u64_binary.c libc3/buf_inspect_u64.h libc3/buf_inspect_u64.c libc3/buf_inspect_s64_hexadecimal.h libc3/buf_inspect_s64_hexadecimal.c libc3/buf_inspect_s64_decimal.h libc3/binding.h libc3/sequence.c libc3/buf_inspect_s64_decimal.c libc3/io.c libc3/ceiling.c libc3/ceiling.h libc3/cfn.c libc3/cfn.h libc3/character.c libc3/character.h libc3/buf_inspect_s64_octal.h libc3/buf_inspect_s64_octal.c libc3/buf_inspect_s64_binary.h libc3/buf_inspect_s64_binary.c libc3/buf_inspect_s64.h libc3/buf_inspect_s64.c libc3/u8.c libc3/s32.h libc3/s32.c libc3/buf_parse_u32.h libc3/buf_parse_u32.c libc3/buf_parse_s32.h libc3/buf_parse_s32.c libc3/buf_inspect_u32_hexadecimal.h libc3/u16.h libc3/compare.c libc3/buf_inspect.c libc3/compare.h libc3/buf_inspect_u32_hexadecimal.c libc3/buf_inspect_u32_decimal.h libc3/buf_inspect_u32_decimal.c libc3/buf_inspect_u32_octal.h libc3/buf_inspect_u32_octal.c libc3/buf_inspect_u32_binary.h libc3/buf_inspect_u32_binary.c libc3/buf_inspect_u32.h libc3/buf_inspect_s32_hexadecimal.h libc3/buf_inspect_u32.c libc3/buf_inspect_s32.c libc3/error.c libc3/error.h libc3/error_handler.c libc3/eval.h libc3/eval.c libc3/facts.h libc3/buf_inspect_s32_hexadecimal.c libc3/buf_inspect_s32_decimal.h libc3/buf_inspect_s32_decimal.c libc3/buf_inspect_s32_octal.h libc3/buf_inspect_s32_octal.c libc3/buf_inspect_s32_binary.h libc3/buf_inspect_s32_binary.c libc3/buf_inspect_s32.h libc3/s16.h libc3/s16.c libc3/buf_parse_u16.h libc3/buf_parse_u16.c libc3/buf_parse_s16.h libc3/fn.c libc3/fact.h libc3/facts_cursor.c libc3/buf_parse_s16.c libc3/buf_inspect_u16_hexadecimal.h libc3/buf_inspect_u16_hexadecimal.c libc3/buf_inspect_u16_decimal.c libc3/buf_inspect_u16_decimal.h libc3/buf_inspect_u16_octal.h libc3/buf_inspect_u16_octal.c libc3/buf_inspect_u16_binary.h libc3/buf_inspect_u16_binary.c libc3/buf_inspect_u16.h libc3/buf_inspect_u16.c libc3/buf_inspect_s16_hexadecimal.h libc3/buf_inspect_s16_hexadecimal.c libc3/facts_cursor.h libc3/facts_spec.c libc3/facts_spec.h libc3/facts_spec_cursor.h libc3/buf_inspect_s16_decimal.h libc3/buf_inspect_s16_decimal.c libc3/buf_inspect_s16_octal.h libc3/buf_inspect_s16_octal.c libc3/buf_inspect_s16_binary.h libc3/buf_inspect_s16_binary.c libc3/buf_inspect_s16.h libc3/buf_inspect_s16.c libc3/u8.h libc3/s8.h libc3/s8.c libc3/ptr_free.h libc3/buf_parse_u8.h libc3/buf_parse_u.h.in libc3/facts_with.c libc3/facts_with.h libc3/facts_with_cursor.c libc3/buf_parse_u8.c libc3/buf_parse_s8.h libc3/buf_parse_s8.c libc3/buf_inspect_u8_hexadecimal.h libc3/buf_inspect_u8_decimal.h libc3/buf_inspect_u8_hexadecimal.c libc3/buf_inspect_u8_decimal.c libc3/buf_inspect_u8_octal.h libc3/buf_inspect_u8_octal.c libc3/buf_inspect_u8_binary.h libc3/buf_inspect_u8_binary.c libc3/buf_inspect_u8.h libc3/buf_inspect_u8.c libc3/buf_inspect_s8.h libc3/facts_with_cursor.h libc3/float.h libc3/frame.c libc3/frame.h libc3/types.h libc3/buf_inspect_s8_hexadecimal.h libc3/f64.h libc3/buf_inspect_s8_hexadecimal.c libc3/hash.c libc3/buf_inspect_s8_decimal.h libc3/buf_inspect_s8_decimal.c libc3/buf_inspect_s8_octal.h libc3/buf_inspect_s8_octal.c libc3/buf_inspect_s8_binary.h libc3/buf_inspect_s8_binary.c libc3/buf_inspect_s8.c libc3/tag_init.h libc3/list_init.h libc3/hash.h libc3/ident.h libc3/integer.c libc3/integer.h libc3/point.h.in libc3/u.c.in libc3/log.c libc3/log.h libc3/buf_inspect_s.h.in libc3/ptr.h libc3/buf_inspect.h libc3/c3_main.h libc3/f64.c libc3/struct_type.c libc3/abs.h libc3/str.c libc3/module.h libc3/buf_parse_u.c.in libc3/quote.c libc3/quote.h libc3/set.c.in libc3/set.h.in libc3/buf_inspect_s_base.h.in libc3/sequence.h libc3/tag_mul.c libc3/tag_sub.c libc3/set_cursor.c.in libc3/set_cursor.h.in libc3/f32.h libc3/facts.c libc3/set_item.c.in libc3/set_item.h.in libc3/s.h.in libc3/sign.c libc3/sign.h libc3/skiplist.c.in libc3/skiplist.h.in libc3/type.h libc3/tag.c libc3/skiplist_node.c.in libc3/skiplist_node.h.in libc3/str.h libc3/tag_div.c libc3/tuple.c libc3/ucd.c libc3/sym.h libc3/tuple.h libc3/type.c libc3/ucd.h libc3/tag_shift_left.c libc3/buf_parse_s.h.in libc3/buf_inspect_s.c.in libc3/tag.h libc3/list_init.c libc3/env.c libc3/tag_shift_right.c libc3/error_handler.h libc3/ptr_free.c libc3/ident.c libc3/tag_type.c libc3/assert.h libc3/tag_init.c libc3/tag_bor.c libc3/tag_bxor.c libc3/buf_inspect_s_base.c.in libc3/buf_inspect_u.c.in libc3/buf_inspect_u.h.in libc3/env.h libc3/c3.h libc3/arg.h libc3/buf_inspect_u_base.c.in libc3/buf_inspect_u_base.h.in libc3/map.c libc3/window/cairo/xcb/config.h libc3/window/cairo/xcb/window_cairo_xcb.c libc3/window/cairo/xcb/demo/window_cairo_xcb_demo.c libc3/window/cairo/xcb/window_cairo_xcb.h libc3/window/cairo/types.h libc3/window/cairo/window_cairo.h libc3/window/cairo/window_cairo.c libc3/window/cairo/quartz/window_cairo_quartz.h libc3/window/cairo/quartz/demo/window_cairo_quartz_demo.c libc3/window/cairo/quartz/window_cairo_quartz_app_delegate.h libc3/window/cairo/quartz/xkbquartz.h libc3/window/cairo/quartz/window_cairo_quartz_view.h libc3/window/cairo/quartz/window_cairo_quartz_view_controller.h libc3/window/cairo/quartz/quartz_to_xkbcommon.c libc3/window/cairo/quartz/quartz_to_xkbcommon.h libc3/window/cairo/demo/bg_rect.c libc3/window/cairo/demo/bg_rect.h libc3/window/cairo/demo/lightspeed.c libc3/window/cairo/demo/lightspeed.h libc3/window/cairo/demo/window_cairo_demo.c libc3/window/cairo/demo/window_cairo_demo.h libc3/window/cairo/demo/toasters.c libc3/window/cairo/demo/flies.c libc3/window/cairo/demo/flies.h libc3/window/cairo/demo/toasters.h libc3/window/cairo/win32/demo/window_cairo_win32_demo.c libc3/window/cairo/win32/vk_to_xkbcommon.c libc3/window/cairo/win32/vk_to_xkbcommon.h libc3/window/cairo/win32/window_cairo_win32.c libc3/window/cairo/win32/window_cairo_win32.h libc3/window/cairo/cairo_sprite.c libc3/window/cairo/cairo_sprite.h libc3/window/cairo/cairo_font.c libc3/window/cairo/cairo_font.h libc3/window/types.h libc3/window/window.c libc3/window/window.h libc3/window/sdl2/demo/bg_rect.c libc3/window/sdl2/demo/bg_rect.h libc3/window/sdl2/demo/window_sdl2_demo.c libc3/window/sdl2/demo/lightspeed.c libc3/window/sdl2/demo/lightspeed.h libc3/window/sdl2/demo/earth.c libc3/window/sdl2/demo/flies.c libc3/window/sdl2/demo/toasters.c libc3/window/sdl2/demo/flies.h libc3/window/sdl2/demo/toasters.h libc3/window/sdl2/demo/earth.h libc3/window/sdl2/demo/window_sdl2_demo.h libc3/window/sdl2/types.h libc3/window/sdl2/window_sdl2.c libc3/window/sdl2/window_sdl2.h libc3/window/sdl2/sdl2_font.h libc3/window/sdl2/sdl2_font.c libc3/window/sdl2/sdl2_sprite.c libc3/window/sdl2/sdl2_sprite.h libc3/window/sdl2/gl_camera.c libc3/window/sdl2/gl_sphere.c libc3/window/sdl2/gl_point_3d.c libc3/window/sdl2/gl_point_2d.c libc3/window/sdl2/disabled/mandelbrot.c libc3/window/sdl2/disabled/mandelbrot.h libc3/window/sdl2/gl_camera.h libc3/window/sdl2/gl_cylinder.c libc3/window/sdl2/gl_cylinder.h libc3/window/sdl2/gl_sphere.h libc3/window/sdl2/gl_point_2d.h libc3/window/sdl2/gl_object.c libc3/window/sdl2/gl_object.h libc3/window/sdl2/gl_point_3d.h libc3/window/sdl2/gl_matrix_4d.h libc3/window/sdl2/gl_matrix_3d.h libc3/window/sdl2/gl_matrix_4d.c libc3/array.h libc3/u16.c libc3/list.c libc3/u.h.in libc3/sha1.h libc3/file.h libc3/fact.c libc3/list.h libc3/fn.h libc3/map.h libc3/sym.c libc3/struct_type.h libc3/u32.c libc3/license.c libc3/file.c libc3/operator.c libc3/f32.c libc3/ptr.c libc3/ptag.h libc3/tag_add.c libc3/tag_band.c libc3/fn_clause.h libc3/s.c.in libc3/operator.h libc3/fn_clause.c libc3/tag_mod.c libc3/ptag.c libc3/var.h libc3/var.c libc3/io.h libc3/time.h libc3/void.c libc3/void.h libc3/struct.h libc3/module.c libc3/tag_type.h libc3/time.c test/buf_inspect_test.c test/bool_test.c test/buf_parse_test.c test/facts_test.c test/buf_file_test.c test/list_test.c test/test.h test/buf_parse_test_u8.c test/buf_parse_test.h test/buf_parse_test_s16.c test/buf_parse_test_s32.c test/buf_parse_test_s64.c test/buf_parse_test_s8.c test/buf_parse_test_su.h test/test.c test/buf_parse_test_u16.c test/buf_parse_test_u32.c test/buf_parse_test_u64.c test/call_test.c test/facts_cursor_test.c test/sym_test.c test/cfn_test.c test/character_test.c test/env_test.c test/fact_test.c test/fact_test.h test/libc3_test.c test/str_test.c test/facts_with_test.c test/hash_test.c test/compare_test.c test/compare_test.h test/ident_test.c test/buf_test.c test/set__fact_test.c test/set__tag_test.c test/skiplist__fact_test.c test/tag_test.c test/tag_test.h test/array_test.c test/fn_test.c test/tuple_test.c test/types_test.c ucd2c/ucd.h ucd2c/ucd2c.c '
+C3_C_SOURCES='c3c/c3c.c c3s/buf_readline.c c3s/c3s.c c3s/buf_readline.h ic3/ic3.c ic3/buf_linenoise.c ic3/config.h ic3/buf_linenoise.h ic3/linenoise.c ic3/buf_wineditline.c ic3/buf_wineditline.h libc3/struct.c libc3/abs.c libc3/buf.c libc3/set__tag.c libc3/set_item__tag.c libc3/set__tag.h libc3/set_item__tag.h libc3/set_cursor__tag.h libc3/set_cursor__tag.c libc3/skiplist_node__fact.c libc3/skiplist_node__fact.h libc3/skiplist__fact.c libc3/skiplist__fact.h libc3/set_item__fact.h libc3/set__fact.c libc3/call.c libc3/arg.c libc3/binding.c libc3/c3.c libc3/set_item__fact.c libc3/set__fact.h libc3/set_cursor__fact.c libc3/set_cursor__fact.h libc3/uw.c libc3/sw.h libc3/uw.h libc3/sw.c libc3/buf_parse_uw.h libc3/buf_parse_uw.c libc3/buf_parse_sw.h libc3/buf_parse_sw.c libc3/buf_inspect_uw_hexadecimal.h libc3/buf_inspect_uw_hexadecimal.c libc3/buf_inspect_uw_decimal.h libc3/buf_inspect_uw_decimal.c libc3/u64.h libc3/bool.c libc3/bool.h libc3/buf_file.c libc3/buf_inspect_uw_octal.h libc3/buf_inspect_uw_octal.c libc3/buf_inspect_uw_binary.h libc3/buf_inspect_uw.h libc3/buf_inspect_uw_binary.c libc3/buf_inspect_uw.c libc3/buf_inspect_sw_hexadecimal.h libc3/buf_inspect_sw_hexadecimal.c libc3/buf_inspect_sw_decimal.h libc3/buf_inspect_sw_decimal.c libc3/buf_inspect_sw_octal.h libc3/buf_inspect_sw_octal.c libc3/buf_inspect_sw_binary.h libc3/buf_parse.h libc3/buf.h libc3/buf_save.c libc3/facts_spec_cursor.c libc3/buf_inspect_sw_binary.c libc3/buf_inspect_sw.h libc3/buf_inspect_sw.c libc3/u64.c libc3/s64.h libc3/s64.c libc3/buf_parse_u64.h libc3/buf_parse_u64.c libc3/buf_parse_s64.h libc3/buf_parse_s64.c libc3/buf_inspect_u64_hexadecimal.h libc3/buf_inspect_u64_hexadecimal.c libc3/buf_inspect_u64_decimal.h libc3/buf_inspect_u64_decimal.c libc3/u32.h libc3/buf_file.h libc3/buf_save.h libc3/call.h libc3/buf_inspect_u64_octal.h libc3/buf_inspect_u64_octal.c libc3/buf_inspect_u64_binary.h libc3/buf_parse_s.c.in libc3/buf_inspect_u64_binary.c libc3/buf_inspect_u64.h libc3/buf_inspect_u64.c libc3/buf_inspect_s64_hexadecimal.h libc3/buf_inspect_s64_hexadecimal.c libc3/buf_inspect_s64_decimal.h libc3/binding.h libc3/sequence.c libc3/buf_inspect_s64_decimal.c libc3/io.c libc3/ceiling.c libc3/ceiling.h libc3/cfn.c libc3/cfn.h libc3/character.c libc3/character.h libc3/buf_inspect_s64_octal.h libc3/buf_inspect_s64_octal.c libc3/buf_inspect_s64_binary.h libc3/buf_inspect_s64_binary.c libc3/buf_inspect_s64.h libc3/buf_inspect_s64.c libc3/u8.c libc3/s32.h libc3/s32.c libc3/buf_parse_u32.h libc3/buf_parse_u32.c libc3/buf_parse_s32.h libc3/buf_parse_s32.c libc3/buf_inspect_u32_hexadecimal.h libc3/u16.h libc3/compare.c libc3/buf_inspect.c libc3/compare.h libc3/buf_inspect_u32_hexadecimal.c libc3/buf_inspect_u32_decimal.h libc3/buf_inspect_u32_decimal.c libc3/buf_inspect_u32_octal.h libc3/buf_inspect_u32_octal.c libc3/buf_inspect_u32_binary.h libc3/buf_inspect_u32_binary.c libc3/buf_inspect_u32.h libc3/buf_inspect_s32_hexadecimal.h libc3/buf_inspect_u32.c libc3/buf_inspect_s32.c libc3/error.c libc3/error.h libc3/error_handler.c libc3/eval.h libc3/eval.c libc3/facts.h libc3/buf_inspect_s32_hexadecimal.c libc3/buf_inspect_s32_decimal.h libc3/buf_inspect_s32_decimal.c libc3/buf_inspect_s32_octal.h libc3/buf_inspect_s32_octal.c libc3/buf_inspect_s32_binary.h libc3/buf_inspect_s32_binary.c libc3/buf_inspect_s32.h libc3/s16.h libc3/s16.c libc3/buf_parse_u16.h libc3/buf_parse_u16.c libc3/buf_parse_s16.h libc3/fn.c libc3/fact.h libc3/facts_cursor.c libc3/buf_parse_s16.c libc3/buf_inspect_u16_hexadecimal.h libc3/buf_inspect_u16_hexadecimal.c libc3/buf_inspect_u16_decimal.c libc3/buf_inspect_u16_decimal.h libc3/buf_inspect_u16_octal.h libc3/buf_inspect_u16_octal.c libc3/buf_inspect_u16_binary.h libc3/buf_inspect_u16_binary.c libc3/buf_inspect_u16.h libc3/buf_inspect_u16.c libc3/buf_inspect_s16_hexadecimal.h libc3/buf_inspect_s16_hexadecimal.c libc3/facts_cursor.h libc3/facts_spec.c libc3/facts_spec.h libc3/facts_spec_cursor.h libc3/buf_inspect_s16_decimal.h libc3/buf_inspect_s16_decimal.c libc3/buf_inspect_s16_octal.h libc3/buf_inspect_s16_octal.c libc3/buf_inspect_s16_binary.h libc3/buf_inspect_s16_binary.c libc3/buf_inspect_s16.h libc3/buf_inspect_s16.c libc3/u8.h libc3/s8.h libc3/s8.c libc3/ptr_free.h libc3/buf_parse_u8.h libc3/buf_parse_u.h.in libc3/facts_with.c libc3/facts_with.h libc3/facts_with_cursor.c libc3/buf_parse_u8.c libc3/buf_parse_s8.h libc3/buf_parse_s8.c libc3/buf_inspect_u8_hexadecimal.h libc3/buf_inspect_u8_decimal.h libc3/buf_inspect_u8_hexadecimal.c libc3/buf_inspect_u8_decimal.c libc3/buf_inspect_u8_octal.h libc3/buf_inspect_u8_octal.c libc3/buf_inspect_u8_binary.h libc3/buf_inspect_u8_binary.c libc3/buf_inspect_u8.h libc3/buf_inspect_u8.c libc3/buf_inspect_s8.h libc3/facts_with_cursor.h libc3/float.h libc3/frame.c libc3/frame.h libc3/types.h libc3/buf_inspect_s8_hexadecimal.h libc3/f64.h libc3/buf_inspect_s8_hexadecimal.c libc3/hash.c libc3/buf_inspect_s8_decimal.h libc3/buf_inspect_s8_decimal.c libc3/buf_inspect_s8_octal.h libc3/buf_inspect_s8_octal.c libc3/buf_inspect_s8_binary.h libc3/buf_inspect_s8_binary.c libc3/buf_inspect_s8.c libc3/tag_init.h libc3/list_init.h libc3/hash.h libc3/ident.h libc3/integer.c libc3/integer.h libc3/point.h.in libc3/u.c.in libc3/log.c libc3/log.h libc3/buf_inspect_s.h.in libc3/ptr.h libc3/buf_inspect.h libc3/c3_main.h libc3/f64.c libc3/struct_type.c libc3/abs.h libc3/str.c libc3/module.h libc3/buf_parse_u.c.in libc3/quote.c libc3/quote.h libc3/set.c.in libc3/set.h.in libc3/buf_inspect_s_base.h.in libc3/sequence.h libc3/tag_mul.c libc3/tag_sub.c libc3/set_cursor.c.in libc3/set_cursor.h.in libc3/f32.h libc3/facts.c libc3/set_item.c.in libc3/set_item.h.in libc3/s.h.in libc3/sign.c libc3/sign.h libc3/skiplist.c.in libc3/skiplist.h.in libc3/type.h libc3/tag.c libc3/skiplist_node.c.in libc3/skiplist_node.h.in libc3/str.h libc3/tag_div.c libc3/tuple.c libc3/ucd.c libc3/sym.h libc3/tuple.h libc3/type.c libc3/ucd.h libc3/tag_shift_left.c libc3/buf_parse_s.h.in libc3/buf_inspect_s.c.in libc3/tag.h libc3/list_init.c libc3/array.c libc3/env.c libc3/tag_shift_right.c libc3/error_handler.h libc3/ptr_free.c libc3/ident.c libc3/tag_type.c libc3/assert.h libc3/tag_init.c libc3/tag_bor.c libc3/tag_bxor.c libc3/buf_inspect_s_base.c.in libc3/buf_inspect_u.c.in libc3/buf_inspect_u.h.in libc3/env.h libc3/c3.h libc3/list.c libc3/arg.h libc3/buf_inspect_u_base.c.in libc3/buf_inspect_u_base.h.in libc3/map.c libc3/window/cairo/xcb/config.h libc3/window/cairo/xcb/window_cairo_xcb.c libc3/window/cairo/xcb/demo/window_cairo_xcb_demo.c libc3/window/cairo/xcb/window_cairo_xcb.h libc3/window/cairo/types.h libc3/window/cairo/window_cairo.h libc3/window/cairo/window_cairo.c libc3/window/cairo/quartz/window_cairo_quartz.h libc3/window/cairo/quartz/demo/window_cairo_quartz_demo.c libc3/window/cairo/quartz/window_cairo_quartz_app_delegate.h libc3/window/cairo/quartz/xkbquartz.h libc3/window/cairo/quartz/window_cairo_quartz_view.h libc3/window/cairo/quartz/window_cairo_quartz_view_controller.h libc3/window/cairo/quartz/quartz_to_xkbcommon.c libc3/window/cairo/quartz/quartz_to_xkbcommon.h libc3/window/cairo/demo/bg_rect.c libc3/window/cairo/demo/bg_rect.h libc3/window/cairo/demo/lightspeed.c libc3/window/cairo/demo/lightspeed.h libc3/window/cairo/demo/window_cairo_demo.c libc3/window/cairo/demo/window_cairo_demo.h libc3/window/cairo/demo/toasters.c libc3/window/cairo/demo/flies.c libc3/window/cairo/demo/flies.h libc3/window/cairo/demo/toasters.h libc3/window/cairo/win32/demo/window_cairo_win32_demo.c libc3/window/cairo/win32/vk_to_xkbcommon.c libc3/window/cairo/win32/vk_to_xkbcommon.h libc3/window/cairo/win32/window_cairo_win32.c libc3/window/cairo/win32/window_cairo_win32.h libc3/window/cairo/cairo_sprite.c libc3/window/cairo/cairo_sprite.h libc3/window/cairo/cairo_font.c libc3/window/cairo/cairo_font.h libc3/window/types.h libc3/window/window.c libc3/window/window.h libc3/window/sdl2/demo/bg_rect.c libc3/window/sdl2/demo/bg_rect.h libc3/window/sdl2/demo/window_sdl2_demo.c libc3/window/sdl2/demo/lightspeed.c libc3/window/sdl2/demo/lightspeed.h libc3/window/sdl2/demo/earth.c libc3/window/sdl2/demo/flies.c libc3/window/sdl2/demo/toasters.c libc3/window/sdl2/demo/flies.h libc3/window/sdl2/demo/toasters.h libc3/window/sdl2/demo/earth.h libc3/window/sdl2/demo/window_sdl2_demo.h libc3/window/sdl2/types.h libc3/window/sdl2/window_sdl2.c libc3/window/sdl2/window_sdl2.h libc3/window/sdl2/sdl2_font.h libc3/window/sdl2/sdl2_font.c libc3/window/sdl2/sdl2_sprite.c libc3/window/sdl2/sdl2_sprite.h libc3/window/sdl2/gl_camera.c libc3/window/sdl2/gl_sphere.c libc3/window/sdl2/gl_point_3d.c libc3/window/sdl2/gl_point_2d.c libc3/window/sdl2/disabled/mandelbrot.c libc3/window/sdl2/disabled/mandelbrot.h libc3/window/sdl2/gl_camera.h libc3/window/sdl2/gl_cylinder.c libc3/window/sdl2/gl_cylinder.h libc3/window/sdl2/gl_sphere.h libc3/window/sdl2/gl_point_2d.h libc3/window/sdl2/gl_matrix_4d.c libc3/window/sdl2/gl_object.c libc3/window/sdl2/gl_object.h libc3/window/sdl2/gl_point_3d.h libc3/window/sdl2/gl_matrix_4d.h libc3/window/sdl2/gl_matrix_3d.h libc3/window/sdl2/gl_ortho.c libc3/array.h libc3/u16.c libc3/u.h.in libc3/sha1.h libc3/file.h libc3/fact.c libc3/list.h libc3/fn.h libc3/map.h libc3/sym.c libc3/struct_type.h libc3/buf_parse.c libc3/u32.c libc3/license.c libc3/file.c libc3/operator.c libc3/f32.c libc3/ptr.c libc3/ptag.h libc3/tag_add.c libc3/tag_band.c libc3/fn_clause.h libc3/s.c.in libc3/operator.h libc3/fn_clause.c libc3/tag_mod.c libc3/ptag.c libc3/var.h libc3/var.c libc3/io.h libc3/time.h libc3/void.c libc3/void.h libc3/struct.h libc3/module.c libc3/tag_type.h libc3/time.c test/buf_inspect_test.c test/bool_test.c test/buf_parse_test.c test/facts_test.c test/buf_file_test.c test/list_test.c test/test.h test/buf_parse_test_u8.c test/buf_parse_test.h test/buf_parse_test_s16.c test/buf_parse_test_s32.c test/buf_parse_test_s64.c test/buf_parse_test_s8.c test/buf_parse_test_su.h test/test.c test/buf_parse_test_u16.c test/buf_parse_test_u32.c test/buf_parse_test_u64.c test/call_test.c test/facts_cursor_test.c test/sym_test.c test/cfn_test.c test/character_test.c test/env_test.c test/fact_test.c test/fact_test.h test/libc3_test.c test/str_test.c test/facts_with_test.c test/hash_test.c test/compare_test.c test/compare_test.h test/ident_test.c test/buf_test.c test/set__fact_test.c test/set__tag_test.c test/skiplist__fact_test.c test/tag_test.c test/tag_test.h test/array_test.c test/fn_test.c test/tuple_test.c test/types_test.c ucd2c/ucd.h ucd2c/ucd2c.c '
 C3_OBJC_SOURCES='libc3/window/cairo/quartz/window_cairo_quartz.m libc3/window/cairo/quartz/window_cairo_quartz_view.m libc3/window/cairo/quartz/window_cairo_quartz_app_delegate.m libc3/window/cairo/quartz/window_cairo_quartz_view_controller.m '
-C3_OTHER_SOURCES='AUTHORS Makefile README.md c3.index c3.version config.subr configure license.h sources.mk sources.sh img/c3.1.xcf img/c3.1080.jpg img/c3.1080.png img/c3.128.jpg img/c3.128.png img/c3.256.jpg img/c3.256.png img/c3.32.jpg img/c3.32.png img/c3.48.jpg img/c3.48.png img/c3.512.jpg img/c3.512.png img/c3.64.jpg img/c3.64.png img/c3.640.jpg img/c3.640.png img/c3.720.jpg img/c3.720.png img/c3.xcf img/iris-c3-004.jpeg img/iris-c3-004.png img/c3.16.png img/thodg_No_Prompt_073261d5-2c81-4b6e-9572-e0b840c55f1f.jpeg img/c3.iconset/icon_128x128.png img/c3.iconset/icon_16x16.png img/c3.iconset/icon_256x256.png img/c3.iconset/icon_32x32.png img/c3.iconset/icon_512x512.png img/c3.iconset/icon_64x64.png img/flaps.png img/toast.png img/fly-dead.png img/fly-noto.png img/earth.jpg img/earth.png img/flaps.256.png img/toast.128.png lib/c3/0.1/c3.facts lib/c3/0.1/array.facts lib/c3/0.1/gl/sphere.facts lib/c3/0.1/list.facts lib/c3/0.1/map.facts lib/c3/0.1/ptr_free.facts lib/c3/0.1/u8.facts lib/c3/0.1/s16.facts lib/c3/0.1/u32.facts lib/c3/0.1/u16.facts lib/c3/0.1/u64.facts lib/c3/0.1/uw.facts lib/c3/0.1/integer.facts lib/c3/0.1/s32.facts lib/c3/0.1/s64.facts lib/c3/0.1/s8.facts lib/c3/0.1/sw.facts libc3/tag_init.rb test/buf_parse_test_su.rb test/replace_lines.rb test/test.rb test/test_case_end.rb fonts/Courier New/Courier New.ttf test/ic3/map.in test/ic3/array.err.expected test/ic3/array.in test/ic3/array.out.expected test/ic3/array.ret.expected test/ic3/bool.err.expected test/ic3/bool.in test/ic3/bool.out.expected test/ic3/bool.ret.expected test/ic3/call.err.expected test/ic3/call.in test/ic3/cast.in test/ic3/call.out.expected test/ic3/call.ret.expected test/ic3/cast.out.expected test/ic3/cast.ret.expected test/ic3/character.err.expected test/ic3/character.in test/ic3/character.out.expected test/ic3/character.ret.expected test/ic3/comment.err.expected test/ic3/comment.in test/ic3/list.in test/ic3/comment.out.expected test/ic3/comment.ret.expected test/ic3/equal.err.expected test/ic3/equal.in test/ic3/equal.out.expected test/ic3/equal.ret.expected test/ic3/fn.err.expected test/ic3/fn.in test/ic3/fn.out.expected test/ic3/fn.ret.expected test/ic3/function_call.err.expected test/ic3/function_call.out.expected test/ic3/hello.err.expected test/ic3/function_call.ret.expected test/ic3/hello.in test/ic3/hello.out.expected test/ic3/hello.ret.expected test/ic3/ident.err.expected test/ic3/ident.in test/ic3/ident.out.expected test/ic3/ident.ret.expected test/ic3/integer.in test/ic3/integer.lisp test/ic3/integer.out.expected test/ic3/integer.ret.expected test/ic3/integer_add.in test/ic3/list.out.expected test/ic3/integer_add.out.expected test/ic3/integer_add.ret.expected test/ic3/integer_band.in test/ic3/integer_band.out.expected test/ic3/integer_band.ret.expected test/ic3/integer_bnot.in test/ic3/integer_bnot.out.expected test/ic3/integer_bnot.ret.expected test/ic3/integer_bor-2.in test/ic3/op.in test/ic3/integer_bor-2.out.expected test/ic3/integer_bor-2.ret.expected test/ic3/integer_bxor.in test/ic3/integer_bxor.out.expected test/ic3/integer_bxor.ret.expected test/ic3/integer_div.in test/ic3/integer_div.out.expected test/ic3/integer_div.ret.expected test/ic3/integer_eq.in test/ic3/integer_eq.out.expected test/ic3/integer_gt.in test/ic3/integer_eq.ret.expected test/ic3/integer_gt.out.expected test/ic3/integer_gt.ret.expected test/ic3/integer_lt.in test/ic3/integer_lt.out.expected test/ic3/integer_lt.ret.expected test/ic3/integer_mod-2.in test/ic3/integer_mod-2.out.expected test/ic3/integer_mod-2.ret.expected test/ic3/integer_mul.in test/ic3/integer_mul.out.expected test/ic3/integer_mul.ret.expected test/ic3/integer_neg.in test/ic3/integer_neg.out.expected test/ic3/integer_neg.ret.expected test/ic3/integer_sub.in test/ic3/integer_sub.out.expected test/ic3/integer_sub.ret.expected test/ic3/map.ret.expected test/ic3/list.err.expected test/ic3/sym.out.expected test/ic3/list.ret.expected test/ic3/str.in test/ic3/op.err.expected test/ic3/op.out.expected test/ic3/op.ret.expected test/ic3/str.err.expected test/ic3/str.out.expected test/ic3/str.ret.expected test/ic3/sym.err.expected test/ic3/sym.in test/ic3/sym.ret.expected test/ic3/tuple.err.expected test/ic3/tuple.in test/ic3/tuple.out.expected test/ic3/tuple.ret.expected test/ic3/map.out.expected test/ic3/plist.in test/ic3/plist.out.expected test/ic3/plist.err.expected test/ic3/plist.ret.expected test/facts_test_dump_file.expected.facts test/facts_test_load_file.facts test/facts_test_open_file.1.expected.facts test/facts_test_open_file.1.in.facts test/facts_test_open_file.2.expected.facts test/facts_test_open_file.2.in.facts test/facts_test_open_file.3.expected.facts test/facts_test_open_file.3.in.facts test/facts_test_save.expected.facts test/facts_test_log_add.expected.facts test/facts_test_log_remove.expected.facts test/ic3_test test/zero '
+C3_OTHER_SOURCES='AUTHORS Makefile README.md c3.index c3.version config.subr configure license.h sources.mk sources.sh img/c3.1.xcf img/c3.1080.jpg img/c3.1080.png img/c3.128.jpg img/c3.128.png img/c3.256.jpg img/c3.256.png img/c3.32.jpg img/c3.32.png img/c3.48.jpg img/c3.48.png img/c3.512.jpg img/c3.512.png img/c3.64.jpg img/c3.64.png img/c3.640.jpg img/c3.640.png img/c3.720.jpg img/c3.720.png img/c3.xcf img/iris-c3-004.jpeg img/iris-c3-004.png img/c3.16.png img/thodg_No_Prompt_073261d5-2c81-4b6e-9572-e0b840c55f1f.jpeg img/c3.iconset/icon_128x128.png img/c3.iconset/icon_16x16.png img/c3.iconset/icon_256x256.png img/c3.iconset/icon_32x32.png img/c3.iconset/icon_512x512.png img/c3.iconset/icon_64x64.png img/flaps.png img/toast.png img/fly-dead.png img/fly-noto.png img/earth.jpg img/earth.png img/flaps.256.png img/toast.128.png lib/c3/0.1/c3.facts lib/c3/0.1/array.facts lib/c3/0.1/gl/sphere.facts lib/c3/0.1/gl/triangle.facts lib/c3/0.1/gl/vertex.facts lib/c3/0.1/gl/point2d.facts lib/c3/0.1/gl/point3d.facts lib/c3/0.1/gl/object.facts lib/c3/0.1/list.facts lib/c3/0.1/map.facts lib/c3/0.1/ptr_free.facts lib/c3/0.1/u8.facts lib/c3/0.1/s16.facts lib/c3/0.1/u32.facts lib/c3/0.1/u16.facts lib/c3/0.1/u64.facts lib/c3/0.1/f64.facts lib/c3/0.1/uw.facts lib/c3/0.1/integer.facts lib/c3/0.1/f32.facts lib/c3/0.1/s32.facts lib/c3/0.1/s64.facts lib/c3/0.1/s8.facts lib/c3/0.1/sw.facts libc3/tag_init.rb test/buf_parse_test_su.rb test/replace_lines.rb test/test.rb test/test_case_end.rb fonts/Courier New/Courier New.ttf test/ic3/map.in test/ic3/array.err.expected test/ic3/array.in test/ic3/array.out.expected test/ic3/array.ret.expected test/ic3/bool.err.expected test/ic3/bool.in test/ic3/bool.out.expected test/ic3/bool.ret.expected test/ic3/call.err.expected test/ic3/call.in test/ic3/cast.in test/ic3/call.out.expected test/ic3/call.ret.expected test/ic3/cast.out.expected test/ic3/cast.ret.expected test/ic3/character.err.expected test/ic3/character.in test/ic3/character.out.expected test/ic3/character.ret.expected test/ic3/comment.err.expected test/ic3/comment.in test/ic3/list.in test/ic3/comment.out.expected test/ic3/comment.ret.expected test/ic3/equal.err.expected test/ic3/equal.in test/ic3/equal.out.expected test/ic3/equal.ret.expected test/ic3/fn.err.expected test/ic3/fn.in test/ic3/fn.out.expected test/ic3/fn.ret.expected test/ic3/function_call.err.expected test/ic3/function_call.out.expected test/ic3/hello.err.expected test/ic3/function_call.ret.expected test/ic3/hello.in test/ic3/hello.out.expected test/ic3/hello.ret.expected test/ic3/ident.err.expected test/ic3/ident.in test/ic3/ident.out.expected test/ic3/ident.ret.expected test/ic3/integer.in test/ic3/integer.lisp test/ic3/integer.out.expected test/ic3/integer.ret.expected test/ic3/integer_add.in test/ic3/list.out.expected test/ic3/integer_add.out.expected test/ic3/integer_add.ret.expected test/ic3/integer_band.in test/ic3/integer_band.out.expected test/ic3/integer_band.ret.expected test/ic3/integer_bnot.in test/ic3/integer_bnot.out.expected test/ic3/integer_bnot.ret.expected test/ic3/integer_bor-2.in test/ic3/op.in test/ic3/integer_bor-2.out.expected test/ic3/integer_bor-2.ret.expected test/ic3/integer_bxor.in test/ic3/integer_bxor.out.expected test/ic3/integer_bxor.ret.expected test/ic3/integer_div.in test/ic3/integer_div.out.expected test/ic3/integer_div.ret.expected test/ic3/integer_eq.in test/ic3/integer_eq.out.expected test/ic3/integer_gt.in test/ic3/integer_eq.ret.expected test/ic3/integer_gt.out.expected test/ic3/integer_gt.ret.expected test/ic3/integer_lt.in test/ic3/integer_lt.out.expected test/ic3/integer_lt.ret.expected test/ic3/integer_mod-2.in test/ic3/integer_mod-2.out.expected test/ic3/integer_mod-2.ret.expected test/ic3/integer_mul.in test/ic3/integer_mul.out.expected test/ic3/integer_mul.ret.expected test/ic3/integer_neg.in test/ic3/integer_neg.out.expected test/ic3/integer_neg.ret.expected test/ic3/integer_sub.in test/ic3/integer_sub.out.expected test/ic3/integer_sub.ret.expected test/ic3/map.ret.expected test/ic3/list.err.expected test/ic3/sym.out.expected test/ic3/list.ret.expected test/ic3/str.in test/ic3/op.err.expected test/ic3/op.out.expected test/ic3/op.ret.expected test/ic3/str.err.expected test/ic3/str.out.expected test/ic3/str.ret.expected test/ic3/sym.err.expected test/ic3/sym.in test/ic3/sym.ret.expected test/ic3/tuple.err.expected test/ic3/tuple.in test/ic3/tuple.out.expected test/ic3/tuple.ret.expected test/ic3/map.out.expected test/ic3/plist.in test/ic3/plist.out.expected test/ic3/plist.err.expected test/ic3/plist.ret.expected test/facts_test_dump_file.expected.facts test/facts_test_load_file.facts test/facts_test_open_file.1.expected.facts test/facts_test_open_file.1.in.facts test/facts_test_open_file.2.expected.facts test/facts_test_open_file.2.in.facts test/facts_test_open_file.3.expected.facts test/facts_test_open_file.3.in.facts test/facts_test_save.expected.facts test/facts_test_log_add.expected.facts test/facts_test_log_remove.expected.facts test/ic3_test test/zero '
 C3_EXTERNAL_SOURCES='libffi/aclocal.m4 libffi/autom4te.cache/output.0 libffi/autom4te.cache/output.1 libffi/autom4te.cache/output.2 libffi/autom4te.cache/output.3 libffi/autom4te.cache/requests libffi/autom4te.cache/traces.0 libffi/autom4te.cache/traces.1 libffi/autom4te.cache/traces.2 libffi/autom4te.cache/traces.3 libffi/autom4te.cache/output.4 libffi/autom4te.cache/traces.4 libffi/autom4te.cache/output.5 libffi/autom4te.cache/traces.5 libffi/autom4te.cache/output.6 libffi/autom4te.cache/traces.6 libffi/doc/version.texi libffi/doc/Makefile.am libffi/doc/Makefile.in libffi/doc/libffi.info libffi/doc/libffi.texi libffi/doc/mdate-sh libffi/doc/texinfo.tex libffi/doc/Makefile libffi/include/ffi_common.h libffi/include/Makefile.am libffi/include/Makefile.in libffi/include/ffi.h.in libffi/include/ffi_cfi.h libffi/include/tramp.h libffi/include/Makefile libffi/include/ffi.h libffi/include/ffitarget.h libffi/libffi.xcodeproj/project.pbxproj libffi/m4/ax_append_flag.m4 libffi/m4/asmcfi.m4 libffi/m4/ax_cflags_warn_all.m4 libffi/m4/ax_cc_maxopt.m4 libffi/m4/ax_check_compile_flag.m4 libffi/m4/ax_compiler_vendor.m4 libffi/m4/ax_configure_args.m4 libffi/m4/ax_enable_builddir.m4 libffi/m4/ax_gcc_archflag.m4 libffi/m4/ax_gcc_x86_cpuid.m4 libffi/m4/ax_prepend_flag.m4 libffi/m4/ax_require_defined.m4 libffi/m4/libtool.m4 libffi/m4/ltoptions.m4 libffi/m4/ltsugar.m4 libffi/m4/ltversion.m4 libffi/m4/lt~obsolete.m4 libffi/man/ffi_prep_cif.3 libffi/man/Makefile.am libffi/man/Makefile.in libffi/man/ffi.3 libffi/man/ffi_call.3 libffi/man/ffi_prep_cif_var.3 libffi/man/Makefile libffi/msvc_build/aarch64/aarch64_include/fficonfig.h libffi/msvc_build/aarch64/aarch64_include/ffi.h libffi/msvc_build/aarch64/Ffi_staticLib.vcxproj libffi/msvc_build/aarch64/Ffi_staticLib.sln libffi/msvc_build/aarch64/Ffi_staticLib.vcxproj.filters libffi/msvc_build/aarch64/Ffi_staticLib.vcxproj.user libffi/src/aarch64/ffitarget.h libffi/src/aarch64/ffi.c libffi/src/aarch64/win64_armasm.S libffi/src/aarch64/internal.h libffi/src/aarch64/sysv.S libffi/src/alpha/ffitarget.h libffi/src/alpha/ffi.c libffi/src/alpha/internal.h libffi/src/alpha/osf.S libffi/src/arc/arcompact.S libffi/src/arc/ffi.c libffi/src/arc/ffitarget.h libffi/src/arm/ffitarget.h libffi/src/arm/ffi.c libffi/src/arm/sysv_msvc_arm32.S libffi/src/arm/internal.h libffi/src/arm/sysv.S libffi/src/avr32/ffitarget.h libffi/src/avr32/ffi.c libffi/src/avr32/sysv.S libffi/src/bfin/ffitarget.h libffi/src/bfin/ffi.c libffi/src/bfin/sysv.S libffi/src/cris/ffitarget.h libffi/src/cris/ffi.c libffi/src/cris/sysv.S libffi/src/csky/ffitarget.h libffi/src/csky/ffi.c libffi/src/csky/sysv.S libffi/src/frv/ffitarget.h libffi/src/frv/eabi.S libffi/src/frv/ffi.c libffi/src/ia64/ffitarget.h libffi/src/ia64/ffi.c libffi/src/ia64/ia64_flags.h libffi/src/ia64/unix.S libffi/src/kvx/ffitarget.h libffi/src/kvx/asm.h libffi/src/kvx/ffi.c libffi/src/kvx/sysv.S libffi/src/loongarch64/ffitarget.h libffi/src/loongarch64/ffi.c libffi/src/loongarch64/sysv.S libffi/src/m32r/ffitarget.h libffi/src/m32r/ffi.c libffi/src/m32r/sysv.S libffi/src/m68k/ffitarget.h libffi/src/m68k/ffi.c libffi/src/m68k/sysv.S libffi/src/m88k/ffitarget.h libffi/src/m88k/ffi.c libffi/src/m88k/obsd.S libffi/src/metag/ffitarget.h libffi/src/metag/ffi.c libffi/src/metag/sysv.S libffi/src/microblaze/ffitarget.h libffi/src/microblaze/ffi.c libffi/src/microblaze/sysv.S libffi/src/mips/ffitarget.h libffi/src/mips/ffi.c libffi/src/mips/n32.S libffi/src/mips/o32.S libffi/src/moxie/ffitarget.h libffi/src/moxie/eabi.S libffi/src/moxie/ffi.c libffi/src/nios2/ffitarget.h libffi/src/nios2/ffi.c libffi/src/nios2/sysv.S libffi/src/or1k/ffitarget.h libffi/src/or1k/ffi.c libffi/src/or1k/sysv.S libffi/src/pa/ffitarget.h libffi/src/pa/ffi.c libffi/src/pa/ffi64.c libffi/src/pa/hpux32.S libffi/src/pa/hpux64.S libffi/src/pa/linux.S libffi/src/powerpc/aix_closure.S libffi/src/powerpc/aix.S libffi/src/powerpc/darwin.S libffi/src/powerpc/asm.h libffi/src/powerpc/darwin_closure.S libffi/src/powerpc/ffi.c libffi/src/powerpc/ffi_darwin.c libffi/src/powerpc/ffi_linux64.c libffi/src/powerpc/ffi_powerpc.h libffi/src/powerpc/ffi_sysv.c libffi/src/powerpc/ffitarget.h libffi/src/powerpc/linux64.S libffi/src/powerpc/linux64_closure.S libffi/src/powerpc/ppc_closure.S libffi/src/powerpc/sysv.S libffi/src/powerpc/t-aix libffi/src/riscv/ffitarget.h libffi/src/riscv/ffi.c libffi/src/riscv/sysv.S libffi/src/s390/ffitarget.h libffi/src/s390/ffi.c libffi/src/s390/internal.h libffi/src/s390/sysv.S libffi/src/sh/ffitarget.h libffi/src/sh/ffi.c libffi/src/sh/sysv.S libffi/src/sh64/ffitarget.h libffi/src/sh64/ffi.c libffi/src/sh64/sysv.S libffi/src/sparc/ffitarget.h libffi/src/sparc/ffi.c libffi/src/sparc/ffi64.c libffi/src/sparc/internal.h libffi/src/sparc/v8.S libffi/src/sparc/v9.S libffi/src/tile/ffitarget.h libffi/src/tile/ffi.c libffi/src/tile/tile.S libffi/src/vax/elfbsd.S libffi/src/vax/ffi.c libffi/src/vax/ffitarget.h libffi/src/wasm32/ffitarget.h libffi/src/wasm32/ffi.c libffi/src/x86/internal64.h libffi/src/x86/asmnames.h libffi/src/x86/ffi.c libffi/src/x86/ffi64.c libffi/src/x86/ffitarget.h libffi/src/x86/ffiw64.c libffi/src/x86/internal.h libffi/src/x86/sysv_intel.S libffi/src/x86/sysv.S libffi/src/x86/win64_intel.S libffi/src/x86/unix64.S libffi/src/x86/win64.S libffi/src/x86/unix64.o libffi/src/x86/ffi64.o libffi/src/x86/ffi64.lo libffi/src/x86/win64.o libffi/src/x86/ffiw64.o libffi/src/x86/unix64.lo libffi/src/x86/ffiw64.lo libffi/src/x86/win64.lo libffi/src/xtensa/ffitarget.h libffi/src/xtensa/ffi.c libffi/src/xtensa/sysv.S libffi/src/java_raw_api.c libffi/src/closures.c libffi/src/debug.c libffi/src/dlmalloc.c libffi/src/prep_cif.c libffi/src/raw_api.c libffi/src/tramp.c libffi/src/types.c libffi/src/prep_cif.lo libffi/src/tramp.o libffi/src/types.o libffi/src/raw_api.o libffi/src/closures.o libffi/src/raw_api.lo libffi/src/tramp.lo libffi/src/prep_cif.o libffi/src/types.lo libffi/src/java_raw_api.o libffi/src/java_raw_api.lo libffi/src/closures.lo libffi/testsuite/config/default.exp libffi/testsuite/emscripten/build-tests.sh libffi/testsuite/emscripten/build.sh libffi/testsuite/emscripten/conftest.py libffi/testsuite/emscripten/node-tests.sh libffi/testsuite/emscripten/test.html libffi/testsuite/emscripten/test_libffi.py libffi/testsuite/lib/target-libpath.exp libffi/testsuite/lib/libffi.exp libffi/testsuite/lib/wrapper.exp libffi/testsuite/libffi.bhaible/test-callback.c libffi/testsuite/libffi.bhaible/Makefile libffi/testsuite/libffi.bhaible/README libffi/testsuite/libffi.bhaible/alignof.h libffi/testsuite/libffi.bhaible/bhaible.exp libffi/testsuite/libffi.bhaible/test-call.c libffi/testsuite/libffi.bhaible/testcases.c libffi/testsuite/libffi.call/err_bad_typedef.c libffi/testsuite/libffi.call/align_mixed.c libffi/testsuite/libffi.call/align_stdcall.c libffi/testsuite/libffi.call/bpo_38748.c libffi/testsuite/libffi.call/call.exp libffi/testsuite/libffi.call/many_double.c libffi/testsuite/libffi.call/ffitest.h libffi/testsuite/libffi.call/float.c libffi/testsuite/libffi.call/float1.c libffi/testsuite/libffi.call/float2.c libffi/testsuite/libffi.call/float3.c libffi/testsuite/libffi.call/float4.c libffi/testsuite/libffi.call/float_va.c libffi/testsuite/libffi.call/many.c libffi/testsuite/libffi.call/many2.c libffi/testsuite/libffi.call/many_mixed.c libffi/testsuite/libffi.call/negint.c libffi/testsuite/libffi.call/offsets.c libffi/testsuite/libffi.call/pr1172638.c libffi/testsuite/libffi.call/promotion.c libffi/testsuite/libffi.call/pyobjc_tc.c libffi/testsuite/libffi.call/struct_by_value_big.c libffi/testsuite/libffi.call/return_dbl.c libffi/testsuite/libffi.call/return_dbl1.c libffi/testsuite/libffi.call/return_dbl2.c libffi/testsuite/libffi.call/return_fl.c libffi/testsuite/libffi.call/return_fl1.c libffi/testsuite/libffi.call/return_fl2.c libffi/testsuite/libffi.call/return_fl3.c libffi/testsuite/libffi.call/return_ldl.c libffi/testsuite/libffi.call/return_ll.c libffi/testsuite/libffi.call/return_ll1.c libffi/testsuite/libffi.call/return_sc.c libffi/testsuite/libffi.call/return_sl.c libffi/testsuite/libffi.call/return_uc.c libffi/testsuite/libffi.call/return_ul.c libffi/testsuite/libffi.call/s55.c libffi/testsuite/libffi.call/strlen.c libffi/testsuite/libffi.call/strlen2.c libffi/testsuite/libffi.call/strlen3.c libffi/testsuite/libffi.call/strlen4.c libffi/testsuite/libffi.call/struct1.c libffi/testsuite/libffi.call/struct10.c libffi/testsuite/libffi.call/struct2.c libffi/testsuite/libffi.call/struct3.c libffi/testsuite/libffi.call/struct4.c libffi/testsuite/libffi.call/struct5.c libffi/testsuite/libffi.call/struct6.c libffi/testsuite/libffi.call/struct7.c libffi/testsuite/libffi.call/struct8.c libffi/testsuite/libffi.call/struct9.c libffi/testsuite/libffi.call/struct_by_value_2.c libffi/testsuite/libffi.call/struct_by_value_3.c libffi/testsuite/libffi.call/struct_by_value_4.c libffi/testsuite/libffi.call/va_struct1.c libffi/testsuite/libffi.call/va_1.c libffi/testsuite/libffi.call/struct_by_value_small.c libffi/testsuite/libffi.call/struct_return_2H.c libffi/testsuite/libffi.call/struct_return_8H.c libffi/testsuite/libffi.call/uninitialized.c libffi/testsuite/libffi.call/va_2.c libffi/testsuite/libffi.call/va_3.c libffi/testsuite/libffi.call/va_struct2.c libffi/testsuite/libffi.call/va_struct3.c libffi/testsuite/libffi.closures/closure_fn0.c libffi/testsuite/libffi.closures/closure.exp libffi/testsuite/libffi.closures/closure_loc_fn0.c libffi/testsuite/libffi.closures/closure_fn1.c libffi/testsuite/libffi.closures/closure_fn2.c libffi/testsuite/libffi.closures/closure_fn3.c libffi/testsuite/libffi.closures/closure_fn4.c libffi/testsuite/libffi.closures/closure_fn5.c libffi/testsuite/libffi.closures/closure_fn6.c libffi/testsuite/libffi.closures/closure_simple.c libffi/testsuite/libffi.closures/cls_12byte.c libffi/testsuite/libffi.closures/cls_16byte.c libffi/testsuite/libffi.closures/cls_18byte.c libffi/testsuite/libffi.closures/cls_19byte.c libffi/testsuite/libffi.closures/cls_1_1byte.c libffi/testsuite/libffi.closures/cls_20byte.c libffi/testsuite/libffi.closures/cls_20byte1.c libffi/testsuite/libffi.closures/cls_24byte.c libffi/testsuite/libffi.closures/cls_2byte.c libffi/testsuite/libffi.closures/cls_align_double.c libffi/testsuite/libffi.closures/cls_3_1byte.c libffi/testsuite/libffi.closures/cls_3byte1.c libffi/testsuite/libffi.closures/cls_3byte2.c libffi/testsuite/libffi.closures/cls_3float.c libffi/testsuite/libffi.closures/cls_4_1byte.c libffi/testsuite/libffi.closures/cls_4byte.c libffi/testsuite/libffi.closures/cls_5_1_byte.c libffi/testsuite/libffi.closures/cls_5byte.c libffi/testsuite/libffi.closures/cls_64byte.c libffi/testsuite/libffi.closures/cls_6_1_byte.c libffi/testsuite/libffi.closures/cls_6byte.c libffi/testsuite/libffi.closures/cls_7_1_byte.c libffi/testsuite/libffi.closures/cls_7byte.c libffi/testsuite/libffi.closures/cls_8byte.c libffi/testsuite/libffi.closures/cls_9byte1.c libffi/testsuite/libffi.closures/cls_9byte2.c libffi/testsuite/libffi.closures/cls_align_longdouble.c libffi/testsuite/libffi.closures/cls_align_float.c libffi/testsuite/libffi.closures/cls_longdouble.c libffi/testsuite/libffi.closures/cls_float.c libffi/testsuite/libffi.closures/cls_align_longdouble_split.c libffi/testsuite/libffi.closures/cls_align_longdouble_split2.c libffi/testsuite/libffi.closures/cls_align_pointer.c libffi/testsuite/libffi.closures/cls_align_sint16.c libffi/testsuite/libffi.closures/cls_align_sint32.c libffi/testsuite/libffi.closures/cls_align_sint64.c libffi/testsuite/libffi.closures/cls_align_uint16.c libffi/testsuite/libffi.closures/cls_align_uint32.c libffi/testsuite/libffi.closures/cls_align_uint64.c libffi/testsuite/libffi.closures/cls_dbls_struct.c libffi/testsuite/libffi.closures/cls_double.c libffi/testsuite/libffi.closures/cls_double_va.c libffi/testsuite/libffi.closures/cls_many_mixed_args.c libffi/testsuite/libffi.closures/cls_longdouble_va.c libffi/testsuite/libffi.closures/cls_many_mixed_float_double.c libffi/testsuite/libffi.closures/cls_multi_schar.c libffi/testsuite/libffi.closures/cls_multi_sshort.c libffi/testsuite/libffi.closures/cls_multi_sshortchar.c libffi/testsuite/libffi.closures/cls_multi_uchar.c libffi/testsuite/libffi.closures/cls_multi_ushort.c libffi/testsuite/libffi.closures/cls_multi_ushortchar.c libffi/testsuite/libffi.closures/cls_pointer.c libffi/testsuite/libffi.closures/cls_pointer_stack.c libffi/testsuite/libffi.closures/cls_schar.c libffi/testsuite/libffi.closures/cls_sint.c libffi/testsuite/libffi.closures/cls_sshort.c libffi/testsuite/libffi.closures/cls_struct_va1.c libffi/testsuite/libffi.closures/cls_uchar.c libffi/testsuite/libffi.closures/cls_uint.c libffi/testsuite/libffi.closures/cls_uint_va.c libffi/testsuite/libffi.closures/cls_ulong_va.c libffi/testsuite/libffi.closures/cls_ulonglong.c libffi/testsuite/libffi.closures/cls_ushort.c libffi/testsuite/libffi.closures/err_bad_abi.c libffi/testsuite/libffi.closures/ffitest.h libffi/testsuite/libffi.closures/huge_struct.c libffi/testsuite/libffi.closures/nested_struct.c libffi/testsuite/libffi.closures/problem1.c libffi/testsuite/libffi.closures/nested_struct1.c libffi/testsuite/libffi.closures/nested_struct10.c libffi/testsuite/libffi.closures/nested_struct11.c libffi/testsuite/libffi.closures/nested_struct12.c libffi/testsuite/libffi.closures/nested_struct13.c libffi/testsuite/libffi.closures/nested_struct2.c libffi/testsuite/libffi.closures/nested_struct3.c libffi/testsuite/libffi.closures/nested_struct4.c libffi/testsuite/libffi.closures/nested_struct5.c libffi/testsuite/libffi.closures/nested_struct6.c libffi/testsuite/libffi.closures/nested_struct7.c libffi/testsuite/libffi.closures/nested_struct8.c libffi/testsuite/libffi.closures/nested_struct9.c libffi/testsuite/libffi.closures/single_entry_structs1.c libffi/testsuite/libffi.closures/single_entry_structs2.c libffi/testsuite/libffi.closures/single_entry_structs3.c libffi/testsuite/libffi.closures/stret_large.c libffi/testsuite/libffi.closures/stret_large2.c libffi/testsuite/libffi.closures/stret_medium.c libffi/testsuite/libffi.closures/stret_medium2.c libffi/testsuite/libffi.closures/testclosure.c libffi/testsuite/libffi.closures/unwindtest.cc libffi/testsuite/libffi.closures/unwindtest_ffi_call.cc libffi/testsuite/libffi.complex/cls_align_complex_double.c libffi/testsuite/libffi.complex/cls_align_complex.inc libffi/testsuite/libffi.complex/cls_align_complex_longdouble.c libffi/testsuite/libffi.complex/cls_align_complex_float.c libffi/testsuite/libffi.complex/cls_complex_double.c libffi/testsuite/libffi.complex/cls_complex.inc libffi/testsuite/libffi.complex/cls_complex_longdouble.c libffi/testsuite/libffi.complex/cls_complex_float.c libffi/testsuite/libffi.complex/cls_complex_struct_double.c libffi/testsuite/libffi.complex/cls_complex_struct.inc libffi/testsuite/libffi.complex/cls_complex_struct_longdouble.c libffi/testsuite/libffi.complex/cls_complex_struct_float.c libffi/testsuite/libffi.complex/complex_double.c libffi/testsuite/libffi.complex/complex.exp libffi/testsuite/libffi.complex/cls_complex_va.inc libffi/testsuite/libffi.complex/cls_complex_va_double.c libffi/testsuite/libffi.complex/cls_complex_va_float.c libffi/testsuite/libffi.complex/cls_complex_va_longdouble.c libffi/testsuite/libffi.complex/complex.inc libffi/testsuite/libffi.complex/complex_defs_longdouble.inc libffi/testsuite/libffi.complex/complex_defs_double.inc libffi/testsuite/libffi.complex/complex_defs_float.inc libffi/testsuite/libffi.complex/complex_longdouble.c libffi/testsuite/libffi.complex/complex_float.c libffi/testsuite/libffi.complex/complex_int.c libffi/testsuite/libffi.complex/many_complex.inc libffi/testsuite/libffi.complex/ffitest.h libffi/testsuite/libffi.complex/many_complex_longdouble.c libffi/testsuite/libffi.complex/many_complex_double.c libffi/testsuite/libffi.complex/many_complex_float.c libffi/testsuite/libffi.complex/return_complex1_double.c libffi/testsuite/libffi.complex/return_complex.inc libffi/testsuite/libffi.complex/return_complex1.inc libffi/testsuite/libffi.complex/return_complex1_longdouble.c libffi/testsuite/libffi.complex/return_complex1_float.c libffi/testsuite/libffi.complex/return_complex2_double.c libffi/testsuite/libffi.complex/return_complex2.inc libffi/testsuite/libffi.complex/return_complex2_longdouble.c libffi/testsuite/libffi.complex/return_complex2_float.c libffi/testsuite/libffi.complex/return_complex_longdouble.c libffi/testsuite/libffi.complex/return_complex_double.c libffi/testsuite/libffi.complex/return_complex_float.c libffi/testsuite/libffi.go/static-chain.h libffi/testsuite/libffi.go/aa-direct.c libffi/testsuite/libffi.go/closure1.c libffi/testsuite/libffi.go/ffitest.h libffi/testsuite/libffi.go/go.exp libffi/testsuite/Makefile.am libffi/testsuite/Makefile.in libffi/testsuite/Makefile libffi/libffi_convenience.la libffi/LICENSE-BUILDTOOLS libffi/ChangeLog.old libffi/LICENSE libffi/acinclude.m4 libffi/compile libffi/Makefile libffi/Makefile.am libffi/Makefile.in libffi/README.md libffi/config.guess libffi/config.log libffi/autogen.sh libffi/configure.ac libffi/config.sub libffi/configure libffi/configure.host libffi/depcomp libffi/fficonfig.h.in libffi/install-sh libffi/libffi.map.in libffi/generate-darwin-source-and-headers.py libffi/libffi.pc.in libffi/libtool-ldflags libffi/libtool-version libffi/ltmain.sh libffi/make_sunver.pl libffi/libffi.la libffi/missing libffi/msvcc.sh libffi/stamp-h.in libffi/libffi.pc libffi/a.out libffi/local.exp libffi/config.status libffi/fficonfig.h libffi/stamp-h1 libffi/libtool linenoise/README.markdown linenoise/LICENSE linenoise/Makefile linenoise/example.c linenoise/linenoise.c linenoise/linenoise.h ucd2c/UCD/auxiliary/GraphemeBreakProperty.txt ucd2c/UCD/auxiliary/GraphemeBreakTest.txt ucd2c/UCD/auxiliary/GraphemeBreakTest.html ucd2c/UCD/auxiliary/LineBreakTest.txt ucd2c/UCD/auxiliary/LineBreakTest.html ucd2c/UCD/auxiliary/SentenceBreakProperty.txt ucd2c/UCD/auxiliary/WordBreakTest.txt ucd2c/UCD/auxiliary/SentenceBreakTest.html ucd2c/UCD/auxiliary/SentenceBreakTest.txt ucd2c/UCD/auxiliary/WordBreakProperty.txt ucd2c/UCD/auxiliary/WordBreakTest.html ucd2c/UCD/emoji/emoji-data.txt ucd2c/UCD/emoji/ReadMe.txt ucd2c/UCD/emoji/emoji-variation-sequences.txt ucd2c/UCD/extracted/DerivedBinaryProperties.txt ucd2c/UCD/extracted/DerivedBidiClass.txt ucd2c/UCD/extracted/DerivedDecompositionType.txt ucd2c/UCD/extracted/DerivedCombiningClass.txt ucd2c/UCD/extracted/DerivedEastAsianWidth.txt ucd2c/UCD/extracted/DerivedGeneralCategory.txt ucd2c/UCD/extracted/DerivedJoiningGroup.txt ucd2c/UCD/extracted/DerivedJoiningType.txt ucd2c/UCD/extracted/DerivedLineBreak.txt ucd2c/UCD/extracted/DerivedName.txt ucd2c/UCD/extracted/DerivedNumericType.txt ucd2c/UCD/extracted/DerivedNumericValues.txt ucd2c/UCD/BidiCharacterTest.txt ucd2c/UCD/ArabicShaping.txt ucd2c/UCD/BidiBrackets.txt ucd2c/UCD/CompositionExclusions.txt ucd2c/UCD/BidiMirroring.txt ucd2c/UCD/BidiTest.txt ucd2c/UCD/Blocks.txt ucd2c/UCD/CJKRadicals.txt ucd2c/UCD/CaseFolding.txt ucd2c/UCD/EastAsianWidth.txt ucd2c/UCD/DerivedAge.txt ucd2c/UCD/DerivedNormalizationProps.txt ucd2c/UCD/DerivedCoreProperties.txt ucd2c/UCD/LineBreak.txt ucd2c/UCD/Index.txt ucd2c/UCD/EmojiSources.txt ucd2c/UCD/EquivalentUnifiedIdeograph.txt ucd2c/UCD/HangulSyllableType.txt ucd2c/UCD/Jamo.txt ucd2c/UCD/NameAliases.txt ucd2c/UCD/IndicPositionalCategory.txt ucd2c/UCD/IndicSyllabicCategory.txt ucd2c/UCD/NamedSequencesProv.txt ucd2c/UCD/NamedSequences.txt ucd2c/UCD/NormalizationTest.txt ucd2c/UCD/NamesList.html ucd2c/UCD/NamesList.txt ucd2c/UCD/PropertyValueAliases.txt ucd2c/UCD/NormalizationCorrections.txt ucd2c/UCD/NushuSources.txt ucd2c/UCD/PropList.txt ucd2c/UCD/PropertyAliases.txt ucd2c/UCD/SpecialCasing.txt ucd2c/UCD/ReadMe.txt ucd2c/UCD/Scripts.txt ucd2c/UCD/ScriptExtensions.txt ucd2c/UCD/StandardizedVariants.txt ucd2c/UCD/TangutSources.txt ucd2c/UCD/USourceData.txt ucd2c/UCD/USourceGlyphs.pdf ucd2c/UCD/USourceRSChart.pdf ucd2c/UCD/UnicodeData.txt ucd2c/UCD/VerticalOrientation.txt ucd2c/Makefile ucd2c/UCD.zip ucd2c/configure ucd2c/config.mk ucd2c/license.txt ucd2c/ucd.c ucd2c/ucd.h ucd2c/ucd2c.c ucd2c/ucd2c.o ucd2c/ucd2c.lo ucd2c/ucd2c libtommath/demo/mtest_opponent.c libtommath/demo/shared.c libtommath/demo/shared.h libtommath/demo/test.c libtommath/demo/timing.c libtommath/etc/2kprime.c libtommath/etc/drprime.c libtommath/etc/mersenne.c libtommath/etc/mont.c libtommath/etc/pprime.c libtommath/etc/tune.c libtommath/mtest/mpi-config.h libtommath/mtest/logtab.h libtommath/mtest/mpi-types.h libtommath/mtest/mpi.c libtommath/mtest/mpi.h libtommath/mtest/mtest.c libtommath/bn_cutoffs.c libtommath/bn_deprecated.c libtommath/bn_mp_2expt.c libtommath/bn_mp_abs.c libtommath/bn_mp_add.c libtommath/bn_mp_add_d.c libtommath/bn_mp_cnt_lsb.c libtommath/bn_mp_addmod.c libtommath/bn_mp_and.c libtommath/bn_mp_clamp.c libtommath/bn_mp_clear.c libtommath/bn_mp_clear_multi.c libtommath/bn_mp_cmp.c libtommath/bn_mp_cmp_d.c libtommath/bn_mp_cmp_mag.c libtommath/bn_mp_div.c libtommath/bn_mp_complement.c libtommath/bn_mp_copy.c libtommath/bn_mp_count_bits.c libtommath/bn_mp_decr.c libtommath/bn_mp_div_2.c libtommath/bn_mp_div_2d.c libtommath/bn_mp_from_ubin.c libtommath/bn_mp_fwrite.c libtommath/bn_mp_div_3.c libtommath/bn_mp_div_d.c libtommath/bn_mp_dr_is_modulus.c libtommath/bn_mp_dr_reduce.c libtommath/bn_mp_dr_setup.c libtommath/bn_mp_error_to_string.c libtommath/bn_mp_exch.c libtommath/bn_mp_expt_u32.c libtommath/bn_mp_exptmod.c libtommath/bn_mp_exteuclid.c libtommath/bn_mp_fread.c libtommath/bn_mp_from_sbin.c libtommath/bn_mp_gcd.c libtommath/bn_mp_get_double.c libtommath/bn_mp_get_i32.c libtommath/bn_mp_get_i64.c libtommath/bn_mp_get_mag_u32.c libtommath/bn_mp_get_l.c libtommath/bn_mp_get_ll.c libtommath/bn_mp_get_mag_u64.c libtommath/bn_mp_get_mag_ul.c libtommath/bn_mp_get_mag_ull.c libtommath/bn_mp_grow.c libtommath/bn_mp_incr.c libtommath/bn_mp_init.c libtommath/bn_mp_init_copy.c libtommath/bn_mp_init_i32.c libtommath/bn_mp_init_i64.c libtommath/bn_mp_init_l.c libtommath/bn_mp_init_ll.c libtommath/bn_mp_init_multi.c libtommath/bn_mp_init_set.c libtommath/bn_mp_init_size.c libtommath/bn_mp_init_u32.c libtommath/bn_mp_init_u64.c libtommath/bn_mp_init_ul.c libtommath/bn_mp_init_ull.c libtommath/bn_mp_invmod.c libtommath/bn_mp_lcm.c libtommath/bn_mp_is_square.c libtommath/bn_mp_iseven.c libtommath/bn_mp_isodd.c libtommath/bn_mp_kronecker.c libtommath/bn_mp_log_u32.c libtommath/bn_mp_lshd.c libtommath/bn_mp_mod.c libtommath/bn_mp_mod_2d.c libtommath/bn_mp_mod_d.c libtommath/bn_mp_montgomery_calc_normalization.c libtommath/bn_mp_montgomery_reduce.c libtommath/bn_mp_mul.c libtommath/bn_mp_neg.c libtommath/bn_mp_montgomery_setup.c libtommath/bn_mp_prime_frobenius_underwood.c libtommath/bn_mp_mul_2.c libtommath/bn_mp_mul_2d.c libtommath/bn_mp_mul_d.c libtommath/bn_mp_mulmod.c libtommath/bn_mp_or.c libtommath/bn_mp_pack.c libtommath/bn_mp_pack_count.c libtommath/bn_mp_prime_fermat.c libtommath/bn_mp_prime_is_prime.c libtommath/bn_mp_prime_rand.c libtommath/bn_mp_prime_miller_rabin.c libtommath/bn_mp_prime_next_prime.c libtommath/bn_mp_prime_rabin_miller_trials.c libtommath/bn_mp_radix_size.c libtommath/bn_mp_prime_strong_lucas_selfridge.c libtommath/bn_mp_radix_smap.c libtommath/bn_mp_rand.c libtommath/bn_mp_read_radix.c libtommath/bn_mp_reduce.c libtommath/bn_mp_reduce_2k.c libtommath/bn_mp_reduce_2k_l.c libtommath/bn_mp_reduce_2k_setup.c libtommath/bn_mp_reduce_2k_setup_l.c libtommath/bn_mp_reduce_is_2k.c libtommath/bn_mp_reduce_is_2k_l.c libtommath/bn_mp_root_u32.c libtommath/bn_mp_reduce_setup.c libtommath/bn_mp_rshd.c libtommath/bn_mp_sbin_size.c libtommath/bn_mp_set.c libtommath/bn_mp_set_double.c libtommath/bn_mp_set_i32.c libtommath/bn_mp_set_i64.c libtommath/bn_mp_set_l.c libtommath/bn_mp_set_ll.c libtommath/bn_mp_set_u32.c libtommath/bn_mp_set_u64.c libtommath/bn_mp_set_ul.c libtommath/bn_mp_set_ull.c libtommath/bn_mp_shrink.c libtommath/bn_mp_signed_rsh.c libtommath/bn_mp_sqr.c libtommath/bn_mp_sqrmod.c libtommath/bn_mp_sqrt.c libtommath/bn_mp_sqrtmod_prime.c libtommath/bn_mp_sub.c libtommath/bn_mp_sub_d.c libtommath/bn_mp_xor.c libtommath/bn_mp_submod.c libtommath/bn_mp_to_radix.c libtommath/bn_mp_to_sbin.c libtommath/bn_mp_to_ubin.c libtommath/bn_mp_ubin_size.c libtommath/bn_mp_unpack.c libtommath/bn_mp_zero.c libtommath/bn_prime_tab.c libtommath/bn_s_mp_add.c libtommath/bn_s_mp_balance_mul.c libtommath/bn_s_mp_exptmod.c libtommath/bn_s_mp_exptmod_fast.c libtommath/bn_s_mp_karatsuba_mul.c libtommath/bn_s_mp_get_bit.c libtommath/bn_s_mp_invmod_fast.c libtommath/bn_s_mp_invmod_slow.c libtommath/bn_s_mp_karatsuba_sqr.c libtommath/bn_s_mp_montgomery_reduce_fast.c libtommath/bn_s_mp_mul_high_digs.c libtommath/bn_s_mp_reverse.c libtommath/bn_s_mp_mul_digs.c libtommath/bn_s_mp_mul_digs_fast.c libtommath/bn_s_mp_sqr.c libtommath/bn_s_mp_mul_high_digs_fast.c libtommath/bn_s_mp_prime_is_divisible.c libtommath/bn_s_mp_rand_jenkins.c libtommath/bn_s_mp_rand_platform.c libtommath/bn_s_mp_sqr_fast.c libtommath/bn_s_mp_sub.c libtommath/bn_s_mp_toom_mul.c libtommath/bn_s_mp_toom_sqr.c libtommath/tommath.h libtommath/tommath_class.h libtommath/tommath_cutoffs.h libtommath/tommath_private.h libtommath/tommath_superclass.h libtommath/LICENSE libtommath/README.md '