2242 Commits

Author SHA1 Message Date
Pierre-Marie de Rodat
db8c410e47 GDB helpers: fix support for standalone libraries 2026-02-12 14:40:46 +00:00
Pierre-Marie de Rodat
5a1ee73a26 Liblktlang: fix handling of property references with module prefixes 2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
7235199b71 lkt_toolbox: hide type info for modules (always null) 2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
d674f8ab4d Liblktlang: override referenced_decl for ImportedId
Also extend lkt_toolbox to exercise it.
2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
5ff4e084d7 Enhance lkt_toolbox to exercise ModuleId.referenced_decl
Also extend lkt_toolbox to exercise it.
2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
96adb4a586 Liblktlang: add missing handling of type references with module prefixes 2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
1256e7a69f Liblktlang: fix semantic analysis for user-provided Metadata types 2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
615bdc3b4f Liblktlang: add support for the revamped module system 2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
556e670d30 Liblktlang: make LangkitRoot derive Decl
`LangkitRoot` nodes now define modules, so they must be treated as
declarations for these modules. This is necessary for the semantic
analysis to allow named references to Lkt modules.
2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
3fb9baf1b7 lkt/lsp/decl_details/test.py: minor refactoring 2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
db18c38155 lkt/lsp/complete: sort completion results
Currently, the order of items returned by `LktNode.p_complete` is not
significant and depends deeply on implementation details. Sort its
result so that baselines are more resilient to changes in the
implementation of completion.
2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
29ec593a46 Lkt frontend: add handling of multiple modules in import ... clauses 2026-02-12 11:48:42 +00:00
Pierre-Marie de Rodat
96afcbb61b GDB helpers: fix putting a breakpoint on a root static property 2026-02-05 14:01:42 +00:00
Pierre-Marie de Rodat
c145260502 GDB: fix handling of the various lexical env types 2026-02-05 13:26:47 +00:00
Pierre-Marie de Rodat
b950d445c9 Testsuite: decorrelate Python distribs for e3-testsuite and Langkit
Introduce the testsuite `--with-langkit-python` option so that it is
possible to have:

* one interpreter with the e3 distribution (to run the testsuite),
* one interpreter with Langkit installed (to run lkm and the various
  scripts using Langkit modules),
* one bare interpreter to import Langkit-generated libraries.
2026-02-02 11:25:47 +00:00
Pierre-Marie de Rodat
6ca298582b GDB helpers: fix analysis of Ada type names
Recent versions of GDB may use the dot for qualified type names instead
of the previous double underscore. Handle this case.
2026-02-02 09:51:36 +00:00
Pierre-Marie de Rodat
5fc8a36d3c Make it possible for plugin passes to register extra input files
Use it in Liblktlang so that any modification to the Lkt prelude or the
script that translates it into an Ada unit triggers a recompilation.
2026-02-02 08:50:01 +00:00
Killian Perlin
53a7f2540e lkt: Match liblkqllang parse-tree shape for patterns
This commit is a "backport" of the recent changes in the LKQL pattern
syntax to the lkt pattern syntax.

Unused features, deprecated constructs where removed and the parse-tree
was flattened to simplify lowering.

See langkit-query-language#597 and langkit-query-language#596 for more
details.
2026-01-29 13:33:06 +00:00
Pierre-Marie de Rodat
2372b137a7 Liblktlang: add missing resolver arguments in prelude functions
Also add an extensive "lkt" testcase for these functions.
2026-01-27 11:01:47 +00:00
Pierre-Marie de Rodat
75309c8a14 Lkt: handle renaming parts in import clauses 2026-01-20 16:03:43 +00:00
Pierre-Marie de Rodat
6e88d6ec25 Lkt: revamp the module system 2026-01-20 16:03:43 +00:00
Pierre-Marie de Rodat
d5cf4f8821 tests/lkt/import: move test to a subdirectory 2026-01-20 16:03:43 +00:00
Pierre-Marie de Rodat
b46f76d218 Lkt: introduce syntax for new import clauses 2026-01-20 16:03:43 +00:00
Pierre-Marie de Rodat
68f1debb86 Liblktlang: introduce module-level doc strings 2026-01-20 16:03:43 +00:00
Pierre-Marie de Rodat
42039ecd69 Lkt frontend: fix resolution of generic list type as base type 2026-01-20 16:03:42 +00:00