11 Commits

Author SHA1 Message Date
Pierre-Marie de Rodat
b82edb1642 Update baselines after sloc range change for some empty lists in Langkit 2024-12-03 12:59:51 +00:00
Laurent Thévenoux
35ef292093 Update testsuite baselines
TN: V104-012
2022-09-05 15:21:00 +02:00
Laurent Thévenoux
73452a5a60 Improve AttributeRef parsing robustness
Only allow regular parameter list for the AttributeRef arguments
field.

TN: V629-007
2022-07-08 16:14:09 +02:00
Raphaël AMIARD
c7be8883d0 T724-020: Add suport for aspects on formal parameters 2021-08-04 13:35:08 +02:00
Pierre-Marie de Rodat
c8398a760d Update baselines after the introspection API change in Langkit
TN: U203-015
2021-02-09 14:25:03 +01:00
Pierre-Marie de Rodat
4382a22f9c Reorganize the source tree
Move most of "ada/*" to the root directory (this makes sense, as this
repository has been dedicated to Libadalang for years), and rename
"ada/language" to "ada".

TN: T914-010
2020-11-02 16:51:46 +01:00
Raphael Amiard
1351ac3234 libadalang: clean directory structure
* put langkit and libadalang in separate root directories

O611-018

Change-Id: I79200c2b4a109f8291dcde4f8eb7472b8880bd74
2015-06-15 13:03:12 +02:00
Pierre-Marie de Rodat
318e2c403f Parsers: by default, reject unexpected trailing input tokens
Add a check in high-level parser function to make sure that all tokens
are consumed by the parser. Also add an option to disable this check.
Fix testcases to strip trailing tokens that are no longer not accepted.

Followup on O525-009

Change-Id: I66799941ea8b37b95cf6b7ea25aa62cf04b01e7a
2015-05-29 12:12:27 +02:00
Pierre-Marie de Rodat
ca4cc474cc Testsuite: harmonize expected output files
Followup on O414-012

Change-Id: I443c498e15f673449ebbca0fc05d8a893e76bb2e
2015-04-14 12:47:37 +02:00
Raphael Amiard
1c6742115f O313-038: Indentation, first pass
* ada/ada_parser/*.py: Add indentation specifiers (hard coded at
  the moment)

* ada/ada_parser/decl.py: Refactor subprogram parameters into their own
  nodes, to be able to indent them correctly.

* compiler/parsers.py: Add an Indent data type that contains data about
  the two kind of indents that we support for the moment: relative to
  the parent scope's indent level (KIND_REL_POS), and relative to a
  specific token's pos (KIND_TOKEN_POS)

  Alter the Field's constructor to store the data about indentation
  type. Allow a shorcut: passing an integer directly to the field param
  will create an Indent datatype with KIND_REL_POS.

* AST (mako files):

  * Refactor the parser to store sloc ranges as token indices, rather
    than as a source location.

  * This allows us to add a 'snap' mode to the lookup primitive, that
    will snap to surrounding tokens while doing loookup.

  * Add a compute_indent_level method as well as an indent field to
    ASTNodes. Calling compute_indent_level on the top node will compute
    the indent level of every node.

* interactive_main: Add a stub implementation of file indentation, that
  is hard coded in the middle of the main at the moment. It uses the
  node visitor and the compute_indent_level primitive to indent a file.

Change-Id: Id0c294ab80c1773ee4ebee91a61c309632473fb1
2015-03-23 17:05:25 +01:00
Pierre-Marie de Rodat
9b7f2bad0a Move the testsuite to its own directory
Followup on O311-016

Change-Id: I9c1152637fd7538fa345c267e8046def7e947a16
2015-03-11 15:38:57 +01:00