public inbox for ~johnnyrichard/olang-devel@lists.sr.ht
 help / color / mirror / code / Atom feed
* [olang/patches/.build.yml] build failed
  2024-03-25 22:36 ` [PATCH olang v1 2/2] cli: remove code duplication Johnny Richard
@ 2024-03-25 21:37   ` builds.sr.ht
  2024-03-26  2:32     ` Carlos Maniero
  2024-03-26  2:30   ` [PATCH olang v1 2/2] cli: remove code duplication Carlos Maniero
  1 sibling, 1 reply; 31+ messages in thread
From: builds.sr.ht @ 2024-03-25 21:37 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 40s

[Introduce CLI option for improved AST tree visualization][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/50448
[1]: mailto:johnny@johnnyrichard.com

✗ #1178386 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1178386

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH olang v1 0/2] Introduce CLI option for improved AST tree visualization
@ 2024-03-25 22:36 Johnny Richard
  2024-03-25 22:36 ` [PATCH olang v1 1/2] cli: add new option to pretty print AST tree Johnny Richard
  2024-03-25 22:36 ` [PATCH olang v1 2/2] cli: remove code duplication Johnny Richard
  0 siblings, 2 replies; 31+ messages in thread
From: Johnny Richard @ 2024-03-25 22:36 UTC (permalink / raw)
  To: ~johnnyrichard/olang-devel; +Cc: Johnny Richard

Johnny Richard (2):
  cli: add new option to pretty print AST tree
  cli: remove code duplication

 docs/manpages/olang.md |   4 +
 src/cli.c              |   5 +-
 src/cli.h              |   3 +-
 src/main.c             |  34 ++++-
 src/pretty_print_ast.c | 286 +++++++++++++++++++++++++++++++++++++++++
 src/pretty_print_ast.h |  25 ++++
 6 files changed, 351 insertions(+), 6 deletions(-)
 create mode 100644 src/pretty_print_ast.c
 create mode 100644 src/pretty_print_ast.h


base-commit: ce5389c3835d0222a4f5f74c27f6bd06bbdd93c7
-- 
2.44.0


^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH olang v1 1/2] cli: add new option to pretty print AST tree
  2024-03-25 22:36 [PATCH olang v1 0/2] Introduce CLI option for improved AST tree visualization Johnny Richard
@ 2024-03-25 22:36 ` Johnny Richard
  2024-03-25 22:36 ` [PATCH olang v1 2/2] cli: remove code duplication Johnny Richard
  1 sibling, 0 replies; 31+ messages in thread
From: Johnny Richard @ 2024-03-25 22:36 UTC (permalink / raw)
  To: ~johnnyrichard/olang-devel; +Cc: Johnny Richard

Understanding the intricacies of a parser can be challenging without
adequate visualization tools. This commit addresses this by introducing
a new CLI option to the compiler, enabling the generation of
ASCII-formatted AST trees for easy inspection post-syntax analysis.

It's worth noting that due to current limitations, the tool is optimized
for trees with up to 64 levels.  Beyond 64 levels this tool won't bring
much value I believe.

Signed-off-by: Johnny Richard <johnny@johnnyrichard.com>
---
 docs/manpages/olang.md |   4 +
 src/cli.c              |   5 +-
 src/cli.h              |   3 +-
 src/main.c             |  31 +++++
 src/pretty_print_ast.c | 286 +++++++++++++++++++++++++++++++++++++++++
 src/pretty_print_ast.h |  25 ++++
 6 files changed, 352 insertions(+), 2 deletions(-)
 create mode 100644 src/pretty_print_ast.c
 create mode 100644 src/pretty_print_ast.h

diff --git a/docs/manpages/olang.md b/docs/manpages/olang.md
index 8ed6726..fbca5c3 100644
--- a/docs/manpages/olang.md
+++ b/docs/manpages/olang.md
@@ -11,6 +11,7 @@ olang - O Programming Language compiler
 **olang**
     source_file
     [**----dump-tokens**]
+    [**----dump-ast**]
     [**--o** ___output_file___ [**----save-temps**] [**----arch** ___arch___] [**----sysroot** ___dir___]]
 
 # DESCRIPTION
@@ -23,6 +24,9 @@ contains utilities to help the language development.
 **----dump-tokens**
 :   Display lexical tokens given a soruce.0 code.
 
+**----dump-ast**
+:   Display AST tree to stdout right after syntax analyzes
+
 **--o** ___file___
 :   Compile program into a binary file
 
diff --git a/src/cli.c b/src/cli.c
index a113bbb..fa73b60 100644
--- a/src/cli.c
+++ b/src/cli.c
@@ -44,6 +44,8 @@ cli_parse_args(int argc, char **argv)
     while (arg != NULL) {
         if (strcmp(arg, "--dump-tokens") == 0) {
             opts.options |= CLI_OPT_DUMP_TOKENS;
+        } else if (strcmp(arg, "--dump-ast") == 0) {
+            opts.options |= CLI_OPT_DUMP_AST;
         } else if (strcmp(arg, "--save-temps") == 0) {
             opts.options |= CLI_OPT_SAVE_TEMPS;
         } else if (strcmp(arg, "-o") == 0) {
@@ -60,7 +62,7 @@ cli_parse_args(int argc, char **argv)
         arg = cli_args_shift(&args);
     }
 
-    if (opts.options & CLI_OPT_OUTPUT || opts.options & CLI_OPT_DUMP_TOKENS) {
+    if (opts.options & CLI_OPT_OUTPUT || opts.options & CLI_OPT_DUMP_TOKENS || opts.options & CLI_OPT_DUMP_AST) {
         return opts;
     }
 
@@ -139,6 +141,7 @@ cli_print_usage(FILE *stream, char *compiler_path)
             "Usage: %s [options] file...\n"
             "Options:\n"
             "  --dump-tokens    Display lexer token stream\n"
+            "  --dump-ast       Display ast tree to stdout\n"
             "  --arch <arch>    Binary arch: default to x86_64 (x86_64 | aarch64)\n"
             "  --sysroot <dir>  System root dir where the GNU Assembler and GNU Linker are located: default to '/'\n"
             "  -o <file>        Compile program into a binary file\n"
diff --git a/src/cli.h b/src/cli.h
index b517b2c..3f4c3a9 100644
--- a/src/cli.h
+++ b/src/cli.h
@@ -42,7 +42,8 @@ typedef enum
     CLI_OPT_OUTPUT = 1 << 1,
     CLI_OPT_SAVE_TEMPS = 1 << 2,
     CLI_OPT_ARCH = 1 << 3,
-    CLI_OPT_SYSROOT = 1 << 4
+    CLI_OPT_SYSROOT = 1 << 4,
+    CLI_OPT_DUMP_AST = 1 << 5
 } cli_opt_t;
 
 cli_opts_t
diff --git a/src/main.c b/src/main.c
index ff0aaa8..70e7d3f 100644
--- a/src/main.c
+++ b/src/main.c
@@ -27,6 +27,7 @@
 #include "codegen_linux_x86_64.h"
 #include "lexer.h"
 #include "parser.h"
+#include "pretty_print_ast.h"
 #include "string_view.h"
 
 // TODO: find a better solution to define the arena capacity
@@ -35,6 +36,9 @@
 void
 handle_dump_tokens(cli_opts_t *opts);
 
+void
+handle_dump_ast(cli_opts_t *opts);
+
 void
 handle_codegen_linux(cli_opts_t *opts);
 
@@ -54,6 +58,11 @@ main(int argc, char **argv)
         return EXIT_SUCCESS;
     }
 
+    if (opts.options & CLI_OPT_DUMP_AST) {
+        handle_dump_ast(&opts);
+        return EXIT_SUCCESS;
+    }
+
     if (opts.options & CLI_OPT_OUTPUT) {
         handle_codegen_linux(&opts);
         return EXIT_SUCCESS;
@@ -92,6 +101,28 @@ handle_dump_tokens(cli_opts_t *opts)
     arena_free(&arena);
 }
 
+void
+handle_dump_ast(cli_opts_t *opts)
+{
+    if (opts->file_path == NULL) {
+        cli_print_usage(stderr, opts->compiler_path);
+        exit(EXIT_FAILURE);
+    }
+
+    arena_t arena = arena_new(ARENA_CAPACITY);
+    lexer_t lexer = { 0 };
+    parser_t parser = { 0 };
+
+    string_view_t file_content = read_entire_file(opts->file_path, &arena);
+
+    lexer_init(&lexer, file_content);
+    parser_init(&parser, &lexer, &arena, opts->file_path);
+
+    ast_node_t *ast = parser_parse_program(&parser);
+
+    pretty_print_ast(ast);
+}
+
 void
 handle_codegen_linux(cli_opts_t *opts)
 {
diff --git a/src/pretty_print_ast.c b/src/pretty_print_ast.c
new file mode 100644
index 0000000..e950796
--- /dev/null
+++ b/src/pretty_print_ast.c
@@ -0,0 +1,286 @@
+/*
+ * Copyright (C) 2024 olang maintainers
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ */
+#include "pretty_print_ast.h"
+#include "arena.h"
+#include "list.h"
+#include <assert.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/stat.h>
+#include <unistd.h>
+
+#define ANSI_COLOR_MAGENTA "\x1b[35m"
+#define ANSI_COLOR_RESET "\x1b[0m"
+#define PP_IS_BIT_SET(data, index) ((data)&1 << index)
+
+typedef struct pretty_print_node
+{
+    char *name;
+    list_t *children;
+} pretty_print_node_t;
+
+static bool
+stdout_supports_color()
+{
+    struct stat st;
+    fstat(STDOUT_FILENO, &st);
+    return S_ISCHR(st.st_mode);
+}
+
+static void
+pretty_print_print_ident(uint64_t *prefix, size_t level, bool lst_children)
+{
+    assert(level < 64);
+
+    bool support_color = stdout_supports_color();
+
+    if (support_color) {
+        printf(ANSI_COLOR_MAGENTA);
+    }
+
+    for (size_t i = 0; i < level; ++i) {
+
+        if (!PP_IS_BIT_SET(*prefix, i)) {
+            printf("  ");
+            continue;
+        }
+
+        bool last_index = i + 1 == level;
+
+        if (!last_index) {
+            printf("| ");
+        } else if (lst_children) {
+            printf("`-");
+        } else {
+            printf("|-");
+        }
+    }
+
+    if (support_color) {
+        printf(ANSI_COLOR_RESET);
+    }
+}
+
+static void
+pretty_print_tree(pretty_print_node_t *node, uint64_t *prefix, size_t level, bool lst_children)
+{
+    pretty_print_print_ident(prefix, level, lst_children);
+
+    list_t *list = node->children;
+    if (list != NULL)
+        (*prefix) |= 1 << level;
+    if (lst_children)
+        (*prefix) ^= 1 << (level - 1);
+
+    printf("%s\n", node->name);
+
+    size_t size = list_size(list);
+    for (size_t i = 0; i < size; ++i) {
+        pretty_print_node_t *it = (pretty_print_node_t *)list_get(list, i)->value;
+        pretty_print_tree(it, prefix, level + 1, i + 1 == size);
+    }
+}
+
+static pretty_print_node_t *
+pretty_print_node_new(arena_t *arena)
+{
+    pretty_print_node_t *node = (pretty_print_node_t *)arena_alloc(arena, sizeof(pretty_print_node_t));
+    node->children = (list_t *)arena_alloc(arena, sizeof(list_t));
+    list_init(node->children, arena);
+    return node;
+}
+
+static pretty_print_node_t *
+ast_node_to_pretty_print_node(ast_node_t *ast, arena_t *arena)
+{
+    switch (ast->kind) {
+        case AST_NODE_PROGRAM: {
+            pretty_print_node_t *node = pretty_print_node_new(arena);
+            node->name = "Translation_Unit";
+
+            pretty_print_node_t *fn_node = ast_node_to_pretty_print_node(ast->data.as_program.fn, arena);
+            list_append(node->children, fn_node);
+            return node;
+        }
+        case AST_NODE_FN_DEF: {
+            pretty_print_node_t *node = pretty_print_node_new(arena);
+            ast_fn_definition_t fn_def = ast->data.as_fn_def;
+
+            char name[256];
+            sprintf(name,
+                    "Function_Definition <name:" SV_FMT "> <return:%d>",
+                    SV_ARG(fn_def.identifier),
+                    fn_def.return_type);
+            node->name = (char *)arena_alloc(arena, sizeof(char) * (strlen(name) + 1));
+            strcpy(node->name, name);
+
+            pretty_print_node_t *block = ast_node_to_pretty_print_node(fn_def.block, arena);
+            list_append(node->children, block);
+            return node;
+        }
+        case AST_NODE_BLOCK: {
+            pretty_print_node_t *node = pretty_print_node_new(arena);
+            ast_block_t block = ast->data.as_block;
+
+            node->name = "Block";
+
+            size_t block_nodes_size = list_size(block.nodes);
+            for (size_t i = 0; i < block_nodes_size; ++i) {
+                ast_node_t *ast_node = (ast_node_t *)list_get(block.nodes, i)->value;
+                pretty_print_node_t *child = ast_node_to_pretty_print_node(ast_node, arena);
+                list_append(node->children, child);
+            }
+            return node;
+        }
+        case AST_NODE_RETURN_STMT: {
+            pretty_print_node_t *node = pretty_print_node_new(arena);
+            ast_return_stmt_t return_stmt = ast->data.as_return_stmt;
+
+            node->name = "Return_Statement";
+
+            pretty_print_node_t *child = ast_node_to_pretty_print_node(return_stmt.data, arena);
+            list_append(node->children, child);
+
+            return node;
+        }
+        case AST_NODE_LITERAL: {
+            pretty_print_node_t *node = pretty_print_node_new(arena);
+            ast_literal_t literal = ast->data.as_literal;
+
+            char name[256];
+            switch (literal.kind) {
+                case AST_LITERAL_U32: {
+                    sprintf(name, "Literal <kind:u32> <value:%d>", literal.value.as_u32);
+                    node->name = (char *)arena_alloc(arena, sizeof(char) * (strlen(name) + 1));
+                    strcpy(node->name, name);
+                    break;
+                }
+                default:
+                    assert(0 && "literal not implemented");
+            }
+
+            return node;
+        }
+        case AST_NODE_BINARY_OP: {
+            pretty_print_node_t *node = pretty_print_node_new(arena);
+            ast_binary_op_t binop = ast->data.as_bin_op;
+
+            switch (binop.kind) {
+                case AST_BINOP_ADDITION: {
+                    node->name = "Binary_Operation (+)";
+                    break;
+                }
+                case AST_BINOP_SUBTRACTION: {
+                    node->name = "Binary_Operation (-)";
+                    break;
+                }
+                case AST_BINOP_MULTIPLICATION: {
+                    node->name = "Binary_Operation (*)";
+                    break;
+                }
+                case AST_BINOP_DIVISION: {
+                    node->name = "Binary_Operation (/)";
+                    break;
+                }
+                case AST_BINOP_REMINDER: {
+                    node->name = "Binary_Operation (%)";
+                    break;
+                }
+                case AST_BINOP_BITWISE_LSHIFT: {
+                    node->name = "Binary_Operation (<<)";
+                    break;
+                }
+                case AST_BINOP_BITWISE_RSHIFT: {
+                    node->name = "Binary_Operation (>>)";
+                    break;
+                }
+                case AST_BINOP_BITWISE_XOR: {
+                    node->name = "Binary_Operation (^)";
+                    break;
+                }
+                case AST_BINOP_BITWISE_AND: {
+                    node->name = "Binary_Operation (&)";
+                    break;
+                }
+                case AST_BINOP_BITWISE_OR: {
+                    node->name = "Binary_Operation (|)";
+                    break;
+                }
+                case AST_BINOP_CMP_LT: {
+                    node->name = "Binary_Operation (<)";
+                    break;
+                }
+                case AST_BINOP_CMP_GT: {
+                    node->name = "Binary_Operation (>)";
+                    break;
+                }
+                case AST_BINOP_CMP_LEQ: {
+                    node->name = "Binary_Operation (<=)";
+                    break;
+                }
+                case AST_BINOP_CMP_GEQ: {
+                    node->name = "Binary_Operation (>=)";
+                    break;
+                }
+                case AST_BINOP_CMP_EQ: {
+                    node->name = "Binary_Operation (==)";
+                    break;
+                }
+                case AST_BINOP_CMP_NEQ: {
+                    node->name = "Binary_Operation (!=)";
+                    break;
+                }
+                case AST_BINOP_LOGICAL_AND: {
+                    node->name = "Binary_Operation (&&)";
+                    break;
+                }
+                case AST_BINOP_LOGICAL_OR: {
+                    node->name = "Binary_Operation (|)";
+                    break;
+                }
+                default:
+                    assert(false && "binop not implemented");
+            }
+
+            pretty_print_node_t *lhs = ast_node_to_pretty_print_node(binop.lhs, arena);
+            pretty_print_node_t *rhs = ast_node_to_pretty_print_node(binop.rhs, arena);
+
+            list_append(node->children, lhs);
+            list_append(node->children, rhs);
+
+            return node;
+        }
+        default: {
+            printf("node kind = '%d' not implmented\n", ast->kind);
+            assert(false);
+        }
+    }
+    return NULL;
+}
+
+void
+pretty_print_ast(ast_node_t *ast)
+{
+    arena_t arena = arena_new(8 * 1024);
+    pretty_print_node_t *root = ast_node_to_pretty_print_node(ast, &arena);
+    uint64_t prefix = 0;
+
+    pretty_print_tree(root, &prefix, 0, true);
+
+    arena_free(&arena);
+}
diff --git a/src/pretty_print_ast.h b/src/pretty_print_ast.h
new file mode 100644
index 0000000..e0b4c11
--- /dev/null
+++ b/src/pretty_print_ast.h
@@ -0,0 +1,25 @@
+/*
+ * Copyright (C) 2024 olang maintainers
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ */
+#ifndef PRETTY_PRINT_AST
+#define PRETTY_PRINT_AST
+
+#include "ast.h"
+
+void
+pretty_print_ast(ast_node_t *ast);
+
+#endif /* PRETTY_PRINT_AST */
-- 
2.44.0


^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH olang v1 2/2] cli: remove code duplication
  2024-03-25 22:36 [PATCH olang v1 0/2] Introduce CLI option for improved AST tree visualization Johnny Richard
  2024-03-25 22:36 ` [PATCH olang v1 1/2] cli: add new option to pretty print AST tree Johnny Richard
@ 2024-03-25 22:36 ` Johnny Richard
  2024-03-25 21:37   ` [olang/patches/.build.yml] build failed builds.sr.ht
  2024-03-26  2:30   ` [PATCH olang v1 2/2] cli: remove code duplication Carlos Maniero
  1 sibling, 2 replies; 31+ messages in thread
From: Johnny Richard @ 2024-03-25 22:36 UTC (permalink / raw)
  To: ~johnnyrichard/olang-devel; +Cc: Johnny Richard

Signed-off-by: Johnny Richard <johnny@johnnyrichard.com>
---
Ops... LOL

 src/main.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/src/main.c b/src/main.c
index 70e7d3f..e16695b 100644
--- a/src/main.c
+++ b/src/main.c
@@ -68,11 +68,6 @@ main(int argc, char **argv)
         return EXIT_SUCCESS;
     }
 
-    if (opts.options & CLI_OPT_DUMP_TOKENS) {
-        handle_dump_tokens(&opts);
-        return EXIT_SUCCESS;
-    }
-
     return EXIT_FAILURE;
 }
 
-- 
2.44.0


^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH olang v1 2/2] cli: remove code duplication
  2024-03-25 22:36 ` [PATCH olang v1 2/2] cli: remove code duplication Johnny Richard
  2024-03-25 21:37   ` [olang/patches/.build.yml] build failed builds.sr.ht
@ 2024-03-26  2:30   ` Carlos Maniero
  1 sibling, 0 replies; 31+ messages in thread
From: Carlos Maniero @ 2024-03-26  2:30 UTC (permalink / raw)
  To: Johnny Richard, ~johnnyrichard/olang-devel

I tested the soluction and everything seems to be working fine.

Tests I've executed:

  ./olang examples/main_exit.ol --dump-ast
  Translation_Unit
  `-Function_Definition <name:main> <return:0>
    `-Block
      `-Return_Statement
        `-Literal <kind:u32> <value:0>

  ./olang examples/main_exit.ol --dump-tokens
  examples/main_exit.ol:1:1: <fn>
  examples/main_exit.ol:1:4: <identifier>
  examples/main_exit.ol:1:8: <(>
  examples/main_exit.ol:1:9: <)>
  examples/main_exit.ol:1:10: <:>
  examples/main_exit.ol:1:12: <identifier>
  examples/main_exit.ol:1:16: <{>
  examples/main_exit.ol:1:17: <line_feed>
  examples/main_exit.ol:2:3: <return>
  examples/main_exit.ol:2:10: <number>
  examples/main_exit.ol:2:11: <line_feed>
  examples/main_exit.ol:3:1: <}>
  examples/main_exit.ol:3:2: <line_feed>
  examples/main_exit.ol:4:1: <EOF>

  ./olang examples/expression.ol --dump-ast
  Translation_Unit
  `-Function_Definition <name:main> <return:0>
    `-Block
      `-Return_Statement
        `-Binary_Operation (-)
          |-Binary_Operation (+)
          | |-Literal <kind:u32> <value:10>
          | `-Binary_Operation (*)
          |   |-Literal <kind:u32> <value:1>
          |   `-Literal <kind:u32> <value:2>
          `-Binary_Operation (-)
            |-Literal <kind:u32> <value:10>
            `-Binary_Operation (/)
              |-Binary_Operation (+)
              | |-Literal <kind:u32> <value:1>
              | `-Literal <kind:u32> <value:1>
              `-Literal <kind:u32> <value:2>

Nice work!
Applied.

To git.sr.ht:~johnnyrichard/olang
   ce5389c..117a068  main -> main

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [olang/patches/.build.yml] build failed
  2024-03-25 21:37   ` [olang/patches/.build.yml] build failed builds.sr.ht
@ 2024-03-26  2:32     ` Carlos Maniero
  2024-03-26  2:35       ` Carlos Maniero
  0 siblings, 1 reply; 31+ messages in thread
From: Carlos Maniero @ 2024-03-26  2:32 UTC (permalink / raw)
  To: builds.sr.ht, Johnny Richard; +Cc: ~johnnyrichard/olang-devel

The failed pipeline seems to see a sourcehut issue.

Tested locally and all fine.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [olang/patches/.build.yml] build failed
  2024-03-26  2:32     ` Carlos Maniero
@ 2024-03-26  2:35       ` Carlos Maniero
  0 siblings, 0 replies; 31+ messages in thread
From: Carlos Maniero @ 2024-03-26  2:35 UTC (permalink / raw)
  To: Carlos Maniero, builds.sr.ht, Johnny Richard; +Cc: ~johnnyrichard/olang-devel

oops!

s/see/be

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [olang/patches/.build.yml] build failed
  2024-08-13 17:27 ` [olang/patches/.build.yml] build failed builds.sr.ht
@ 2024-08-13 19:03   ` Johnny Richard
  0 siblings, 0 replies; 31+ messages in thread
From: Johnny Richard @ 2024-08-13 19:03 UTC (permalink / raw)
  To: builds.sr.ht; +Cc: ~johnnyrichard/olang-devel

My bad... I have made these changes on top of patches not applied on
main branch.


^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-08-13 18:16 [PATCH olang v1 2/2] ast: inline ast_node_data_t union definition Johnny Richard
@ 2024-08-13 17:27 ` builds.sr.ht
  2024-08-13 19:03   ` Johnny Richard
  0 siblings, 1 reply; 31+ messages in thread
From: builds.sr.ht @ 2024-08-13 17:27 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 29s

[refactor: ast: inline union typedefs][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/54446
[1]: mailto:johnny@johnnyrichard.com

✗ #1302361 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1302361

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-04-20 13:54 [PATCH olang v1] build: rename linter to format to avoid confusion Johnny Richard
@ 2024-04-20 12:57 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-04-20 12:57 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 39s

[build: rename linter to format to avoid confusion][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/51175
[1]: mailto:johnny@johnnyrichard.com

✗ #1200225 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1200225

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [olang/patches/.build.yml] build failed
  2024-03-28 14:59 ` [olang/patches/.build.yml] build failed builds.sr.ht
@ 2024-03-28 16:46   ` Johnny Richard
  0 siblings, 0 replies; 31+ messages in thread
From: Johnny Richard @ 2024-03-28 16:46 UTC (permalink / raw)
  To: builds.sr.ht; +Cc: ~johnnyrichard/olang-devel

On Thu, Mar 28, 2024 at 02:59:02PM +0000, builds.sr.ht wrote:
> olang/patches/.build.yml: FAILED in 36s
> 
> [fe: lexer: add single line comments support][0] from [Johnny Richard][1]
> 
> [0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/50503
> [1]: mailto:johnny@johnnyrichard.com
> 
> ✗ #1181030 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1181030

This build is failing due to a clang bumped version on Arch Linux
repositories.  It was a major bump from 16 to 17 (it has breaking
changes).

We can solve this problem by fixing the version or by bumping our clang
locally.  I will upgrade my clang meanwhile.

Please, consider the patch to fix it.

---->8----
Subject: [PATCH olang] fixup! fe: lexer: add single line comments support


diff --git a/src/pretty_print_ast.c b/src/pretty_print_ast.c
index e950796..129f090 100644
--- a/src/pretty_print_ast.c
+++ b/src/pretty_print_ast.c
@@ -26,7 +26,7 @@
 
 #define ANSI_COLOR_MAGENTA "\x1b[35m"
 #define ANSI_COLOR_RESET "\x1b[0m"
-#define PP_IS_BIT_SET(data, index) ((data)&1 << index)
+#define PP_IS_BIT_SET(data, index) ((data) & 1 << index)
 
 typedef struct pretty_print_node
 {

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-03-28 15:58 [PATCH olang v1] fe: lexer: add single line comments support Johnny Richard
@ 2024-03-28 14:59 ` builds.sr.ht
  2024-03-28 16:46   ` Johnny Richard
  0 siblings, 1 reply; 31+ messages in thread
From: builds.sr.ht @ 2024-03-28 14:59 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 36s

[fe: lexer: add single line comments support][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/50503
[1]: mailto:johnny@johnnyrichard.com

✗ #1181030 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1181030

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-03-27  3:21 [PATCH olang v1 2/2] docs: spec: add variables and constants specification Carlos Maniero
@ 2024-03-27  3:22 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-03-27  3:22 UTC (permalink / raw)
  To: Carlos Maniero; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 35s

[docs: variables specification][0] from [Carlos Maniero][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/50474
[1]: mailto:carlos@maniero.me

✗ #1179573 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1179573

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-03-13 12:32 [PATCH olang v3] refactor: rename zero programming language to olang Fabio Maciel
@ 2024-03-13 12:33 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-03-13 12:33 UTC (permalink / raw)
  To: Fabio Maciel; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 31s

[refactor: rename zero programming language to olang][0] v3 from [Fabio Maciel][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/50187
[1]: mailto:fabio@fabiomaciel.com

✗ #1167852 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1167852

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-03-08 20:52 [PATCH olang] parser: abort when parser identifies a syntax error Johnny Richard
@ 2024-03-08 19:54 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-03-08 19:54 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 30s

[parser: abort when parser identifies a syntax error][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/50088
[1]: mailto:johnny@johnnyrichard.com

✗ #1164684 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1164684

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-03-05  8:44 [PATCH olang v2 3/3] cli: add compilation -o option with --save-temps Johnny Richard
@ 2024-03-05  7:51 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-03-05  7:51 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 12s

[implement assembly linux x86_64 compiler][0] v2 from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49994
[1]: mailto:johnny@johnnyrichard.com

✗ #1162085 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1162085

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [olang/patches/.build.yml] build failed
  2024-03-04 19:39   ` Johnny Richard
@ 2024-03-05  2:05     ` Carlos Maniero
  0 siblings, 0 replies; 31+ messages in thread
From: Carlos Maniero @ 2024-03-05  2:05 UTC (permalink / raw)
  To: Johnny Richard, ~johnnyrichard/olang-devel

The checks passed just fine in my environment too.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [olang/patches/.build.yml] build failed
  2024-03-04 18:33 ` [olang/patches/.build.yml] build failed builds.sr.ht
@ 2024-03-04 19:39   ` Johnny Richard
  2024-03-05  2:05     ` Carlos Maniero
  0 siblings, 1 reply; 31+ messages in thread
From: Johnny Richard @ 2024-03-04 19:39 UTC (permalink / raw)
  To: ~johnnyrichard/olang-devel

On Mon, Mar 04, 2024 at 06:33:31PM +0000, builds.sr.ht wrote:
> olang/patches/.build.yml: FAILED in 12s
> 
> [implement assembly linux x86_64 compiler][0] from [Johnny Richard][1]
> 
> [0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49981
> [1]: mailto:johnny@johnnyrichard.com
> 
> ✗ #1161742 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1161742

I not sure what is happening, the build works find on my machine.  Looks
like the CI machines are failing to setup the environment, nothing to do
with my changes I believe:

    [#1161745] 2024/03/04 18:36:41 Booting image archlinux (default) on port 22563
    [#1161745] 2024/03/04 18:36:42 Waiting for guest to settle
    [#1161745] 2024/03/04 18:36:49 Sending tasks
    [#1161745] 2024/03/04 18:36:52 Sending build environment
    [#1161745] 2024/03/04 18:36:53 Installing packages
    Warning: Permanently added '[localhost]:22563' (ED25519) to the list of known hosts.
    :: Synchronizing package databases...
     core downloading...
     extra downloading...
     multilib downloading...
    warning: archlinux-keyring-20240208-1 is up to date -- skipping
     there is nothing to do
    Warning: Permanently added '[localhost]:22563' (ED25519) to the list of known hosts.
    error: missing dependency 'initramfs' for package 'linux'
    linux: ignoring package upgrade (6.7.6.arch1-1 => 6.7.8.arch1-1)
    mkinitcpio: ignoring package upgrade (37.3-1 => 38-3)
    Resolving dependencies...
    Checking package conflicts...
    :: uninstalling package 'mkinitcpio-37.3-1' due to conflict with 'cryptsetup-2.7.0-3'
    [#1161745] 2024/03/04 18:36:54 Processing post-failed triggers...
    [#1161745] 2024/03/04 18:36:54 Sending webhook...
    [#1161745] 2024/03/04 18:36:54 Webhook response: 200
    [#1161745] 2024/03/04 18:36:54 Thanks!
    [#1161745] 2024/03/04 18:36:54 Build failed.
    [#1161745] 2024/03/04 18:36:54 The build environment will be kept alive for 10 minutes.
    [#1161745] 2024/03/04 18:36:54 To log in with SSH and examine it, use the following command:
    [#1161745] 2024/03/04 18:36:54
    [#1161745] 2024/03/04 18:36:54 	ssh -t builds@fra02.builds.sr.ht connect 1161745
    [#1161745] 2024/03/04 18:36:54
    [#1161745] 2024/03/04 18:36:54 After logging in, the deadline is increased to your remaining build time.


^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-03-04 19:23 [PATCH olang v1 3/3] cli: add compilation -o option with --save-temps Johnny Richard
@ 2024-03-04 18:33 ` builds.sr.ht
  2024-03-04 19:39   ` Johnny Richard
  0 siblings, 1 reply; 31+ messages in thread
From: builds.sr.ht @ 2024-03-04 18:33 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 12s

[implement assembly linux x86_64 compiler][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49981
[1]: mailto:johnny@johnnyrichard.com

✗ #1161742 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1161742

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-03-02 20:01 [PATCH olang] string_view: fix stack buffer overflow on to_u32 Johnny Richard
@ 2024-03-02 19:02 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-03-02 19:02 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 36s

[string_view: fix stack buffer overflow on to_u32][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49949
[1]: mailto:johnny@johnnyrichard.com

✗ #1160713 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1160713

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-03-02 19:02 [PATCH olang] string_view: add n + 1 test to string_view_to_u32 function Johnny Richard
@ 2024-03-02 18:03 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-03-02 18:03 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 40s

[string_view: add n + 1 test to string_view_to_u32 function][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49946
[1]: mailto:johnny@johnnyrichard.com

✗ #1160663 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1160663

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-20 16:39 [PATCH olang v2] utils: add arena Carlos Maniero
@ 2024-02-20 16:45 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-20 16:45 UTC (permalink / raw)
  To: Carlos Maniero; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 36s

[utils: add arena][0] v2 from [Carlos Maniero][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49708
[1]: mailto:carlos@maniero.me

✗ #1154158 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1154158

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-20 16:10 [PATCH olang] utils: add arena Carlos Maniero
@ 2024-02-20 16:15 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-20 16:15 UTC (permalink / raw)
  To: Carlos Maniero; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 36s

[utils: add arena][0] from [Carlos Maniero][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49707
[1]: mailto:carlos@maniero.me

✗ #1154146 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1154146

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-19 21:04 [PATCH olang v4 4/4] lexer: test: add integration tests for --dump-tokens Johnny Richard
@ 2024-02-19 20:07 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-19 20:07 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 42s

[Create --dump-tokens on compiler cli][0] v4 from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49682
[1]: mailto:johnny@johnnyrichard.com

✗ #1153624 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1153624

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-19  1:23 [PATCH olang v2 2/2] lexer: create --dump-tokens cli command Johnny Richard
@ 2024-02-19  0:27 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-19  0:27 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 34s

[Create --dump-tokens on compiler cli][0] v2 from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49641
[1]: mailto:johnny@johnnyrichard.com

✗ #1153051 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1153051

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-19  1:15 [PATCH olang 2/2] lexer: create --dump-tokens cli command Johnny Richard
@ 2024-02-19  0:20 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-19  0:20 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 31s

[Create --dump-tokens on compiler cli][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49640
[1]: mailto:johnny@johnnyrichard.com

✗ #1153048 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1153048

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-17 13:46 [PATCH olang 2/2] Revert "docs: add sphinx documentation support" Carlos Maniero
@ 2024-02-17 13:51 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-17 13:51 UTC (permalink / raw)
  To: Carlos Maniero; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 18s

[remove sphinx dependency][0] from [Carlos Maniero][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49598
[1]: mailto:carlos@maniero.me

✗ #1151949 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1151949

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-17  4:23 [PATCH olang] docs: add HACKING documentation Carlos Maniero
@ 2024-02-17  4:23 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-17  4:23 UTC (permalink / raw)
  To: Carlos Maniero; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 19s

[docs: add HACKING documentation][0] from [Carlos Maniero][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49586
[1]: mailto:carlos@maniero.me

✗ #1151773 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1151773

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-16  2:58 [PATCH olang v2 2/2] tests: add integration test setup Carlos Maniero
@ 2024-02-16  3:03 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-16  3:03 UTC (permalink / raw)
  To: Carlos Maniero; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 15s

[Add integration tests][0] v2 from [Carlos Maniero][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49556
[1]: mailto:carlos@maniero.me

✗ #1151085 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1151085

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-14 23:36 [PATCH olang] style: fix clang-format format indentation Carlos Maniero
@ 2024-02-14 23:41 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-14 23:41 UTC (permalink / raw)
  To: Carlos Maniero; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 16s

[style: fix clang-format format indentation][0] from [Carlos Maniero][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49522
[1]: mailto:carlos@maniero.me

✗ #1150343 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1150343

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [olang/patches/.build.yml] build failed
  2024-02-13 21:36 [PATCH olang] build: enable continuous integration through .build.yml Johnny Richard
@ 2024-02-13 20:34 ` builds.sr.ht
  0 siblings, 0 replies; 31+ messages in thread
From: builds.sr.ht @ 2024-02-13 20:34 UTC (permalink / raw)
  To: Johnny Richard; +Cc: ~johnnyrichard/olang-devel

olang/patches/.build.yml: FAILED in 13s

[build: enable continuous integration through .build.yml][0] from [Johnny Richard][1]

[0]: https://lists.sr.ht/~johnnyrichard/olang-devel/patches/49459
[1]: mailto:johnny@johnnyrichard.com

✗ #1149170 FAILED olang/patches/.build.yml https://builds.sr.ht/~johnnyrichard/job/1149170

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2024-08-13 18:09 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-25 22:36 [PATCH olang v1 0/2] Introduce CLI option for improved AST tree visualization Johnny Richard
2024-03-25 22:36 ` [PATCH olang v1 1/2] cli: add new option to pretty print AST tree Johnny Richard
2024-03-25 22:36 ` [PATCH olang v1 2/2] cli: remove code duplication Johnny Richard
2024-03-25 21:37   ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-03-26  2:32     ` Carlos Maniero
2024-03-26  2:35       ` Carlos Maniero
2024-03-26  2:30   ` [PATCH olang v1 2/2] cli: remove code duplication Carlos Maniero
  -- strict thread matches above, loose matches on Subject: below --
2024-08-13 18:16 [PATCH olang v1 2/2] ast: inline ast_node_data_t union definition Johnny Richard
2024-08-13 17:27 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-08-13 19:03   ` Johnny Richard
2024-04-20 13:54 [PATCH olang v1] build: rename linter to format to avoid confusion Johnny Richard
2024-04-20 12:57 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-03-28 15:58 [PATCH olang v1] fe: lexer: add single line comments support Johnny Richard
2024-03-28 14:59 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-03-28 16:46   ` Johnny Richard
2024-03-27  3:21 [PATCH olang v1 2/2] docs: spec: add variables and constants specification Carlos Maniero
2024-03-27  3:22 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-03-13 12:32 [PATCH olang v3] refactor: rename zero programming language to olang Fabio Maciel
2024-03-13 12:33 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-03-08 20:52 [PATCH olang] parser: abort when parser identifies a syntax error Johnny Richard
2024-03-08 19:54 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-03-05  8:44 [PATCH olang v2 3/3] cli: add compilation -o option with --save-temps Johnny Richard
2024-03-05  7:51 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-03-04 19:23 [PATCH olang v1 3/3] cli: add compilation -o option with --save-temps Johnny Richard
2024-03-04 18:33 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-03-04 19:39   ` Johnny Richard
2024-03-05  2:05     ` Carlos Maniero
2024-03-02 20:01 [PATCH olang] string_view: fix stack buffer overflow on to_u32 Johnny Richard
2024-03-02 19:02 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-03-02 19:02 [PATCH olang] string_view: add n + 1 test to string_view_to_u32 function Johnny Richard
2024-03-02 18:03 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-20 16:39 [PATCH olang v2] utils: add arena Carlos Maniero
2024-02-20 16:45 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-20 16:10 [PATCH olang] utils: add arena Carlos Maniero
2024-02-20 16:15 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-19 21:04 [PATCH olang v4 4/4] lexer: test: add integration tests for --dump-tokens Johnny Richard
2024-02-19 20:07 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-19  1:23 [PATCH olang v2 2/2] lexer: create --dump-tokens cli command Johnny Richard
2024-02-19  0:27 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-19  1:15 [PATCH olang 2/2] lexer: create --dump-tokens cli command Johnny Richard
2024-02-19  0:20 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-17 13:46 [PATCH olang 2/2] Revert "docs: add sphinx documentation support" Carlos Maniero
2024-02-17 13:51 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-17  4:23 [PATCH olang] docs: add HACKING documentation Carlos Maniero
2024-02-17  4:23 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-16  2:58 [PATCH olang v2 2/2] tests: add integration test setup Carlos Maniero
2024-02-16  3:03 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-14 23:36 [PATCH olang] style: fix clang-format format indentation Carlos Maniero
2024-02-14 23:41 ` [olang/patches/.build.yml] build failed builds.sr.ht
2024-02-13 21:36 [PATCH olang] build: enable continuous integration through .build.yml Johnny Richard
2024-02-13 20:34 ` [olang/patches/.build.yml] build failed builds.sr.ht

Code repositories for project(s) associated with this public inbox

	https://git.johnnyrichard.com/olang.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox