commit b0fdafc127fb2e0713ef6811c548d303a9c00118c407c92adc8f8a4f0d678d29 Author: Martin Pluskal Date: Fri Nov 10 08:52:30 2023 +0000 Accepting request 1124791 from home:uncomfyhalomacro I want to add harec to devel:tools:compiler OBS-URL: https://build.opensuse.org/request/show/1124791 OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/harec?expand=0&rev=1 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_service b/_service new file mode 100644 index 0000000..8a385e8 --- /dev/null +++ b/_service @@ -0,0 +1,17 @@ + + + https://git.sr.ht/~sircmpwn/harec + git + master + (.*) + \1 + enable + socvirnyl.estela@gmail.com + + + + *.tar + zst + + + diff --git a/_servicedata b/_servicedata new file mode 100644 index 0000000..24d50b2 --- /dev/null +++ b/_servicedata @@ -0,0 +1,4 @@ + + + https://git.sr.ht/~sircmpwn/harec + b4dd4275b24513d14e999bc35ea7d61ed02d1e08 \ No newline at end of file diff --git a/harec-1699297758.b4dd427.obscpio b/harec-1699297758.b4dd427.obscpio new file mode 100644 index 0000000..fca4ebf --- /dev/null +++ b/harec-1699297758.b4dd427.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:090c0d3f59a2f0d4d1e441a54ef0cfc1dd505a8313c3dc00699c3a0a5ce731ac +size 921612 diff --git a/harec-1699297758.b4dd427.tar.zst b/harec-1699297758.b4dd427.tar.zst new file mode 100644 index 0000000..3e2a2c0 --- /dev/null +++ b/harec-1699297758.b4dd427.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d49993027d7668d87190ce05d173e5562b159d077a53b1abec12002eac7907e +size 167341 diff --git a/harec.changes b/harec.changes new file mode 100644 index 0000000..5f6dfdd --- /dev/null +++ b/harec.changes @@ -0,0 +1,161 @@ +------------------------------------------------------------------- +Fri Nov 10 06:33:21 UTC 2023 - Soc Virnyl Estela + +- Add install command. + +------------------------------------------------------------------- +Fri Nov 10 06:31:02 UTC 2023 - Soc Virnyl Estela + +- Dont pin version requirment on qbe + +------------------------------------------------------------------- +Fri Nov 10 04:12:11 UTC 2023 - socvirnyl.estela@gmail.com + +- Update to version 1699297758.b4dd427: + * parse: improve error message + * all: remove another spurious error + * check: recover from errors in resolve_type + * type_store: fix signed array length check + * gen.c: Fix warning which lets build fail + * Improve handling of invalid UTF-8 in rune/str literals + * check: make error msg more accurate + * Revert "convert redundant check to assert" + * Add zero-size bindings + * check: recover from errors in check_function + +------------------------------------------------------------------- +Sun Aug 20 15:04:21 UTC 2023 - Soc Virnyl Estela + +- Remove no-exec-stack.patch. Seems they use noexec stack already. + +------------------------------------------------------------------- +Sun Aug 20 14:57:42 UTC 2023 - Soc Virnyl Estela + +- Add no-exec-stack.patch + +------------------------------------------------------------------- +Sun Aug 20 14:42:43 UTC 2023 - Soc Virnyl Estela + +- Update to version 0+1630: + * fix type promotion with STORAGE_ERROR on the right + * link tests with -z noexecstack + * emit line number info + * identifier: use xrealloc instead of allocating new memory + * lex: remove pointless _lex function + * Return EXIT_SUCCESS when -h is used + * types: make tagged unions castable to invalid + * doc/runtime.txt: remove runtime behavior descriptions + * check: disallow initializing object with undefined size + * check: disallow assigning to object with undefined size + * Revert nested defers + * Remove cap built-in + * Remove accidentally added test + * check: handle errors without (ab)using type hints + * Revert "Implement new hosted environment requirements" + * Allow top-level static assertions + * Remove unary + + * check: disallow @symbol alongside other attributes + * check: disallow @init, @fini, and @test on prototypes + * Implement new hosted environment requirements + * docs: document NO_COLOR and HAREC_COLOR + * rt: pass raw compile flags to harec + * Make pointer/slice assignability rules more strict + * check: add implicit yield at end of compound expr + * Remove implicit const flag from function decls + * Remove cursed bool test + * check: show visual marker for all errors + * lex: add static assertion for tokens array length + * eval: fix abort when evaluating measure expr on ERROR + * Add cap builtin + * check: always perform result reduction on if expr + * parse: allow return and yield in more places + * tests: remove magic exit status from 09-funcs + * check: remove ctx->deferring + * check, gen: allow nested defers + * check: remove unnecessary defer check + * check: disallow jumping out of defer + * parse: fix import name list parsing + * Link with libm + +------------------------------------------------------------------- +Sun Aug 13 13:26:58 UTC 2023 - Soc Virnyl Estela + +- Replace obsoleted `disabled` option with `manual` + +------------------------------------------------------------------- +Sat Jul 22 14:21:45 UTC 2023 - Soc Virnyl Estela + +- Update to 0+1591: + * qbe: make offset field int64_t instead of long [f16e979] - Sebastian + * all: replace intmax_t with int64_t [18a73fb] - Sebastian + * drop expression parameter from error_norec [c1259f6] - Ember Sawady + * type_dealias: resolve incomplete aliases [506bd08] - Ember Sawady + * thread check context into type_dealias [8b17997] - Ember Sawady + * get rid of yet another spurious error [618f28b] - Ember Sawady + * type store: s/uint/u32/ for tagged union tags [c2e1ec3] - Ember Sawady + * avoid segfault on return with invalid parameters [0424adb] - Ember Sawady + * extend sub-word types before relevant bin/unarithms [f5da14c] - Ember Sawady + * Get rid of more spurious errors [89133d4] - Ember Sawady + * Rewrite malloc [7a27d96] - Ember Sawady + * rt: fix typo [174aef4] - Sebastian + * Add harec -v [a66a324] - Ember Sawady + * lex: make E and P in literals case-insensitive [efc9cc3] - Ember Sawady + * rt+freebsd: _start: don't touch first arg [d8db334] - Ember Sawady + * Emit an abort at the end of @noreturn functions [22e4ade] - Ember Sawady + * emit precise hexadecimal floats in typedef.c [8ea475e] - Bor Grošelj Simić + * implement hex float literals [0c77e6a] - Bor Grošelj Simić + * check: lower the failing case of ! to default match case [2ac0c5f] - Bor Grošelj Simić + * gen: utilize qbe's new hlt instruction [209ca85] - Bor Grošelj Simić + * Add missing comma in abort reasons [4718e74] - Ember Sawady + * gen: put all rt functions into a struct [609c0ca] - Bor Grošelj Simić + * check: no default value for enums without zero value [9b4c417] - Sebastian + * check: disallow autofilling fields without default values [189dfc9] - Sebastian + * gen: remove some obsolete utility functions [8917e4a] - Bor Grošelj Simić + * expr_propagate: make "error occured" a fixed abort [9632c11] - Bor Grošelj Simić + * allow assert/abort with non-constant message [f4ab18a] - Bor Grošelj Simić + * check: handle static assertions without passing them on [186f301] - Bor Grošelj Simić + * add a utility function for constant string exprs [d7231f6] - Bor Grošelj Simić + * all: add xfprintf function which exits for I/O errors [db642ac] - Sebastian + * Permit C-style variadism with no named params [cbe828e] - Sebastian + * docs/runtime.txt: document recently added fixed abort reason [16aa2bb] - Bor Grošelj Simić + * expr.h: remove unused struct expression_propagate [6afa5af] - Bor Grošelj Simić + * all: correct xcalloc argument order [b092fc5] - Sebastian + * Refactor typedef environment variables [dfc1dd1] - Ember Sawady + * eval_measurement: implement len for arrays [f12153b] - Umar Getagazov + * Allow empty -N option arg [9c4c5c7] - Autumn! + * error: Align located messages with other toolchains [7f5eb3f] - Dridi Boukelmoune + * Remove _ from function parameters. [01cb763] - Joe Finney + * Loosen uintptr promotion rules [9bf57f6] - Ember Sawady + * Drop HA_STAGE [72c917b] - Ember Sawady + * Remove char [3dfde59] - Sebastian + * Abort instead of SEGFAULT when slice alloc cap < length [a3b22ca] - Autumn! + * ensure operands and operators match in special assignment expressions [151a0a2] - Bor Grošelj Simić + * check: extract binop validity checking into a separate function [36868d0] - Bor Grošelj Simić + * Add more binarithms tests [aaf2c2f] - Sebastian + * eval: fix signed binarithm operations [76bf2d6] - Sebastian + * gen: correctly copy first member in expandable arrays [d436570] - Bor Grošelj Simić + +------------------------------------------------------------------- +Sat May 27 13:05:16 UTC 2023 - Soc Virnyl Estela + +- Update to 0+1562: + * all: add xfprintf function which exits for I/O errors + * permit C-style variadism with no named params + * docs/runtime.txt: document recently added fixed abort reason + * expr.h: remove unused struct expression_propagate + * all: correct xcalloc argument order + * Refactor typedef environment variables + * eval_measurement: implement len for arrays + * allow empty -N option arg + * error: align located messages with other toolchains + * Remove _ from function parameters. + +------------------------------------------------------------------- +Sat Mar 11 11:29:55 UTC 2023 - Soc Virnyl Estela + +- Enable test suite + +------------------------------------------------------------------- +Tue Feb 28 23:50:54 UTC 2023 - Soc Virnyl Estela + +- Initial spec for harec 0+git1514 diff --git a/harec.obsinfo b/harec.obsinfo new file mode 100644 index 0000000..aebe223 --- /dev/null +++ b/harec.obsinfo @@ -0,0 +1,4 @@ +name: harec +version: 1699297758.b4dd427 +mtime: 1699297758 +commit: b4dd4275b24513d14e999bc35ea7d61ed02d1e08 diff --git a/harec.spec b/harec.spec new file mode 100644 index 0000000..66ee652 --- /dev/null +++ b/harec.spec @@ -0,0 +1,63 @@ +# +# spec file for package harec +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: harec +Release: 0 +Version: 1699297758.b4dd427 +Summary: Bootstrap compiler for hare +URL: https://git.sr.ht/~sircmpwn/harec +Source0: %{name}-%{version}.tar.zst +BuildRequires: make +BuildRequires: qbe +BuildRequires: zstd +License: GPL-3.0-only + +%description + +HareC is a bootstrap compiler for the Hare programming language. Written in C11 for +POSIX-compatible systems. + +%prep +%setup -q +mkdir -p build/ + +%build +export CFLAGS="%optflags" +pushd build/ +../configure +make +popd + +%install +export CFLAGS="%optflags" +pushd build/ +make DESTDIR="%{buildroot}" BINDIR="%{_bindir}" install + +%check +export CFLAGS="%optflags" +cd build +../configure +make +make check + +%files +%{_bindir}/%{name} +%license COPYING +%doc README.md + +%changelog