Commit Graph

1201 Commits

Author SHA1 Message Date
Guillaume Allais
3f76bfdd6f [ test ] for the perf regression 2024-07-26 14:45:54 +01:00
Guillaume Allais
adf284260b Revert "[ new ] totality checking can look under constructors (#3328)"
This reverts commit 6b9f0f7c69.
2024-07-26 14:45:54 +01:00
Robert Wright
40f3987373 Add fromTTImp, fromName, and fromDecls 2024-07-26 14:24:51 +01:00
Steve Dunham
6b9f0f7c69
[ new ] totality checking can look under constructors (#3328)
* [ total ] Consider (x :: zs) to be smaller than (x :: y :: zs)

* Expand RHS metas in totality checking
2024-07-25 12:51:57 +01:00
Guillaume Allais
1eed6a817d [ fix #1236 ] Already fixed, add test case 2024-07-25 11:23:10 +01:00
Steve Dunham
99c665774c [ fix ] check indentation after = in declarations 2024-07-16 11:07:18 +01:00
Mathew Polzin
be2ec7d1fd
Fix annoying warning when running tests on some macOS machines (#3346)
* don't use LC_ALL of C.UTF-8 on macos when testing

* bump version of racket setup action to version using new NodeJS per GitHub's warnings
2024-07-08 09:27:29 +01:00
Sergey Fedorov
1931509c92
idris_support: fix environ for macOS (#3324)
* idris_support: fix environ for macOS

* Add test that touches the new implementation of environ

---------

Co-authored-by: Sergey Fedorov <barracuda@macos-powerpc.org>
Co-authored-by: Mathew Polzin <matt.polzin@gmail.com>
2024-07-03 12:04:22 -05:00
Steve Dunham
efce152178 [ fix ] compile time typecase for functions 2024-07-02 16:38:24 +01:00
Denis Buzdalov
22c25e945e [ fix #3339 ] Set the global test locale 2024-07-02 09:32:13 +01:00
Denis Buzdalov
57f455d135 [ elab ] Change quantity of the search function's argument to 0 2024-06-28 13:09:36 +01:00
Steve Dunham
f561c78812
Add type annotations to monadic bind #3327 (#3329)
* [ new ] Support type annotations on monadic bind

* don't parse quantites on patbind

* Update changelog
2024-06-27 12:05:40 +01:00
Robert Wright
3649821625 Add JSON manipulation functions 2024-06-25 10:37:18 -05:00
Denis Buzdalov
2994e23fd0
[ fix ] Fix search around %defaulthints (#3258)
* [ cleanup ] Move repeating trying-with-unambiguity pattern to a function

* [ fix #2850 ] Search for dependencies for default hints among all hints

* [ fix #2932 ] Always try defaults in dependencies search
2024-06-18 15:39:22 +01:00
André Videla
ddb691bcdc
Merge pull request #3306 from dunhamsteve/implicitParam
[ fix ] implicits are not in scope under an implicit parameter block
2024-06-17 20:03:37 +01:00
Guillaume Allais
0c030020de [ re #3314, #34 ] Tighten the location information for implicits
When implicitly binding a variable, use the location of the head
function/constructor that expects it. This way we can differentiate
multiple implicits bound on the same LHS.

Note that this does not resolve the issue 34: there the location
is then further muddled by the fact that where-bound functions
are lifted to the toplevel.
2024-06-17 16:32:24 +01:00
André Videla
d6b8ab980d
Merge pull request #3315 from andrevidela/fix-3302
Emit error when unbound fixity is hidden
2024-06-17 14:11:44 +01:00
André Videla
02e5468551
Merge pull request #3314 from dunhamsteve/issue-3313
[ fix ] auto search returns no solution instead of ambiguous solution #3313
2024-06-17 12:56:20 +01:00
André Videla
0e09b8d575 Show unrelated namespace with matching operator name 2024-06-17 12:39:37 +01:00
André Videla
f67b303cca Emit error when unbound fixity is hidden 2024-06-16 16:10:47 +01:00
Steve Dunham
1807cdcba7 [ fix ] auto search returns no solution instead of ambiguous solution 2024-06-15 15:01:37 -07:00
Steve Dunham
055568be28 [ fix ] case spliting under implicit/auto parameter 2024-06-13 08:40:33 +01:00
Steve Dunham
c9f7f308cf [ fix ] implicits are not in scope under an implicit parameter 2024-06-12 12:55:29 -07:00
Steve Dunham
9e84b153bd
Add %foreign_impl pragma for augmenting ffi functions (#3303)
* Add %foreign_impl pragma for augmenting ffi functions

* document how conflicting %foreign_impl are handled
2024-06-11 17:45:09 +01:00
Mathew Polzin
88a5328ec1
Add an option that dumps package details to JSON (#3293)
* Initial stab at package json dump

* expose ipkg json dump as new option

* make dependency output easier to ingest by another tool

* Add a test for ipkg json dump

* cleanup

* maybe just don't collide with existing equally good fixity

* make new operator private

* Add new module to api ipkg file

* Add note to CHANGELOG_NEXT

* correct the docs for the dump-ipkg-json command
2024-06-11 11:32:22 +01:00
observant
1e6e125190
Add pipeline operators (#3284)
* Add pipeline operators

* Fix tests

* Change fixity, add tests

* [ fix ] silence actual fixity

---------

Co-authored-by: itmuckel <18561536+itmuckel@users.noreply.github.com>
Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
2024-06-06 10:59:30 +01:00
Denis Buzdalov
1522c3a92c
[ fix ] Fix Show of TTImp for functions with with clauses (#2631)
Co-authored-by: G. Allais <guillaume.allais@ens-lyon.org>
2024-06-05 14:02:04 +01:00
G. Allais
bcf8598f99
[ new ] System.Concurrency.(Linear/Session) (#3294)
* [ refactor ] moving Data.OpenUnion to base

* [ new ] System.Concurrency.(Linear/Session)

* [ test ] for the new feature

Fixing other tests impacted by the refactoring

* [ cleanup ] move definitions around, touch up docs

* [ fix ] re-export linear notations for Control.Linear.LIO
2024-06-05 13:53:30 +01:00
Denis Buzdalov
a6c5cf5af0 [ fixup #2939 ] Make futures not interfere with optimisations 2024-06-03 15:43:23 +01:00
Aleksei Volkov
167258b975 [ test ] Added regression tests for #2927 2024-05-31 10:22:56 +01:00
Stefan Höck
e73ca067ed
[ performance ] a faster implementation of unpack (#3281)
* [ performance ] a much faster implementation of unpack

* [ fix ] partiality error in Hangman test

* [ test ] add some documentation to the unpack test case

* [ test ] fix expected output of unpack test
2024-05-24 08:06:56 +01:00
Steve Dunham
960d818c29 Merge branch 'main' into impossible-lam 2024-04-27 18:25:06 -07:00
Steve Dunham
b99dd05224 [ parser ] Add support for impossible lambdas 2024-04-27 16:57:33 -07:00
André Videla
84ce3a6836
Merge pull request #3253 from dunhamsteve/issue3251
[ parser ] Fix issue parsing unquote
2024-04-28 08:17:18 +09:00
Steve Dunham
ed3fe023cb [ fix ] include ambient CFLAGS/LDFLAGS in ccompilerArgs test 2024-04-27 15:31:59 -07:00
stefan-hoeck
e1c5c2fd8e [ fix ] issue 3266 2024-04-22 15:44:35 +02:00
André Videla
dd991861c1 fix error message for unexported fixities 2024-04-21 23:27:29 +01:00
Hattori, Hiroki
1dc7b74e4e
[RefC] Suppress arglist wrapper (#3177)
* [RefC] Suppress code generation for unnecessary arglist wrappers.

* [RefC] cleanup dead code of arglist.

* Removed Value_Arglist to reduce Closure's allocation overhead.

* fix linter error

* [RefC] make trampoline() safety.

* [RefC] cleanup cStatementsFromANF to keep code simple.

* fix linter error

* fix linter error

* In another time, another galaxy. THE LINTER INVADORS conquaer the all humanity and make them slaves. Under 2024, a only leaved job for every humans is adjusting spaces of source code, or just type gg0vG$== in vim.

* [ test ] update golden value

* added supports 32 params on closure.

* [RefC] [Cleanup] removing duplicate codes.

* [RefC] Switch calling conventions based on the number of arguments to avoid limits on the number of arguments and to reduce stack usage.

* [RefC] Argument that are too large are placed on the heap, as are closures.

* [RefC] use idris2_malloc instead of malloc.

* [RefC] [Cleanup] Keep pure things pure.

* [RefC] Mapped some special constructors to NULL. This reduces malloc cost and generates simpler code in ConCase. But not work yet.

* [RefC] fix merge failure.

* [RefC] stringOps.c replace  NULL for NIL.

* [RefC] cleanup

* [RefC] ConstCase now generate simple if-then statements instead of using helpers. This reduces malloc/free costs.

* fix indentation

* fix whitespaces

* [RefC] The name field in Value_Constructor was restored for tycon. But changed to static const*. Hopefully the C compiler will remove the common string constants. The smartest thing to do would be to create a dummy global variable and use its address as a tag, but that would depend on the C compiler to resolve conflicts.

* [refc] a big changes of the space

* [RefC] Little tricks to reduce temporary variables

* spaces

* [RefC] fix compiler warnings

* [RefC] [test]  Perform memory leak analysis, if valgrind is installed.

* [RefC] Fix invalid memory read. Fix C compiler warnings.

* [RefC] Fix invalid memory read of strSubstr. [test] Perform memory leak analysis, if valgrind is installed.

* [test] fix junk line

* linter

* linter

* linter

* linter

* [RefC] merge with erase_trivial_constuctors

* merge w/ erase_trivial_constructors

* Revert "merge w/ erase_trivial_constructors"

This reverts commit be593a3715.

* Revert "[RefC] merge with erase_trivial_constuctors"

This reverts commit 3c21eb45d8.

* merge w/ upstream/main

* fix merge failure

* rename

* fix renaming

* [RefC] fix merge fail

* [RefC] renamed C functions for safty.

* [RefC] cleanup

* [RefC] Fix constructor tag of UnconsResult.CHARACTER.

---------

Co-authored-by: Mathew Polzin <matt.polzin@gmail.com>
Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
2024-04-17 15:48:43 +01:00
Steve Dunham
d7867c0c1a [ parser ] Fix issue parsing unquote 2024-04-08 20:42:36 -07:00
André Videla
3b0d9d9f35 fix printing of backticked operators 2024-04-04 16:08:23 +01:00
G. Allais
fee293b575
[ re #3177 ] Separate the renaming from the rest (#3248) 2024-04-03 17:22:19 +01:00
André Videla
75032a7164
Emit warning for fixities with no export modifiers (#3234)
* Emit warning for fixities with no export modifiers

This is to help update all the existing code to program with explicit
fixity export directives in preparation for the behavioral change where
they will become private by default.
2024-04-03 15:41:57 +01:00
G. Allais
2c2aa85048
[ prelude ] the is linear in its input (#3239)
* [ prelude ] `the` is linear in its input

* [ fix ] eta-expand tests
2024-03-27 14:09:14 +00:00
Hattori, Hiroki
ddc634b1b2
[RefC] Unbox small integers. (#3181) 2024-03-21 07:32:37 -05:00
Thomas E. Hansen
c7a4fbe40e
[ test ] Add issue#1988 to the test suite
This appears to be fixed now, presumably thanks to PR#3108 or similar.

Closes #1988
2024-03-18 16:37:13 +00:00
Jacob Walters
da6b21a570 [ test ] More comprehensive test for getVis 2024-03-15 22:51:49 +00:00
Jacob Walters
18b165bede [ elab ] Let elab scripts access visibility modifiers 2024-03-15 22:41:29 +00:00
Mathew Polzin
7219486aec
Fix ambiguity error with Uninhabited interface implementations. (#3228) 2024-03-15 17:21:05 -05:00
Mathew Polzin
c3239cb4c0
[fix] Package Search Paths (#3214)
* differentiate between search paths and package directories.

* fix :package repl command

* fix typo that caused Idris to look for library files in the wrong place when testing.

* Add to the changelog
2024-03-09 13:53:23 -06:00
Steve Dunham
809319fe8f
[ test ] fix clean_names function in testutils.sh (#3227) 2024-03-08 10:15:27 -06:00