Fedor Isakov
3f1b65ada2
Fix the structural errors introduced by a badly run migration.
2019-11-06 12:05:18 +01:00
Fedor Isakov
ad90a4cb77
Apply migration that replaces all instances of NodeAnchor with .pointer op.
2019-11-06 11:21:57 +01:00
Fedor Isakov
daa1bdceb6
Update default jvm options for running tests to "-Xmx2048m".
2019-11-05 20:53:01 +01:00
Fedor Isakov
15a7dece1b
Move error annotation to the correct place in test samples.
2019-11-05 18:55:08 +01:00
Fedor Isakov
9f3301f1c2
Typechecking BL: Use origin block to suppress target for dpromote solvers.
2019-11-05 18:54:38 +01:00
Fedor Isakov
8d21b056fa
Typechecking BL: drop calls to node-ptr.resolve where not necessary.
...
Replace expand macro with plain term constructors for String and Object.
2019-11-04 17:16:45 +01:00
Fedor Isakov
0585f88496
Suppress a scope error in a "bad" sample.
2019-11-04 16:20:57 +01:00
Fedor Isakov
4396adc9ff
Fix error being reported on another location.
2019-11-04 16:20:57 +01:00
Grigorii Kirgizov
320a19af93
Add test checking precondition for other tests on incrementality
...
The test is concerned with correct computation of RulesDiff and correct work of ArgumentsCollector
2019-10-31 19:33:17 +03:00
Grigorii Kirgizov
224d998c9a
Temporarily comment out a failing line in Samples_bad3
2019-10-28 20:56:56 +03:00
Grigorii Kirgizov
530dfd8719
Fix incorrect vis scopes due to failing coerceTo queries. Assign 'fallback' type in classifierType macro on error to continue typechecking besides returning error.
...
The problem is concerned from incorrect recover of captureType given recent changes to its handling.
Essentially, recover was losing information about inferred type var bounds.
Also, necessary rule for convertsTo for upperBpundType was missing.
2019-10-28 20:55:24 +03:00
Grigorii Kirgizov
3016ffd904
Remove dependency on lang.text to enable experimental typechecker for Samples:bounds.bad
2019-10-28 18:33:00 +03:00
Grigorii Kirgizov
223b243e7f
MPSCR-2: Fix capture of lowerBoundType on type variables with bounds
2019-10-26 21:44:09 +03:00
Grigorii Kirgizov
820066cf4d
Set "do not generate" flags again on some examples in bl tests
2019-10-26 17:11:47 +03:00
Grigorii Kirgizov
bc46a8e5ce
Upd broken refs to logical vars
2019-10-26 17:01:07 +03:00
Grigorii Kirgizov
c16801a928
Remove unnecessary accidental test root for BL
2019-10-26 16:17:41 +03:00
Grigorii Kirgizov
10a4b9ac70
Extend Lub test a bit with intersection type consumer
2019-10-26 16:17:41 +03:00
Grigorii Kirgizov
1b4a5ce55d
Add check that all aux boudns in type var decl are interfaces. Add test for such error.
2019-10-26 16:17:37 +03:00
Grigorii Kirgizov
122917cc42
Fix: clean up lub() constraint in one case. Caused typechecker errors.
2019-10-26 16:17:37 +03:00
Grigorii Kirgizov
03702da2f0
Add handling of aux bounds in type variable macros
2019-10-26 16:17:37 +03:00
Grigorii Kirgizov
b4d61ecb91
Add two more lub examples in LUB test
2019-10-26 16:17:37 +03:00
Grigorii Kirgizov
dfa53a265f
Add static field access to Sample typechecking test in BL
2019-10-26 16:16:59 +03:00
Grigorii Kirgizov
8e1633b0fb
Fix typing rule for FieldReferenceOperation
2019-10-26 16:16:59 +03:00
Grigorii Kirgizov
9ec95421bf
MPSCR-1: Remove unsound rule from containedIn relation. Add test for that case. Restructure Lub tests.
...
Now another test for suspicious rule for fieldReferenceOperation fails.
2019-10-26 16:16:59 +03:00
Grigorii Kirgizov
223cbeaabe
Add incremental test for BL plus operator overload for String type
2019-10-26 16:14:43 +03:00
Fedor Isakov
742adef5f9
Completing BL typesystem: [ClassifierClass,Mul,Div,LT,GT,NEQ]Expression, UnaryMinus.
2019-10-25 22:45:55 +02:00
Fedor Isakov
3092fa3635
Fix all templates with broken scopes for logical variables.
2019-10-25 22:45:55 +02:00
Fedor Isakov
a117f52ad5
Various improvements in j.m.baseLanguageExt typesystem.
...
Introduce generic way of handing recover/2 for ClassifierType.
Extract handling of expectType/2 constraint into a separate ruleslist.
Add lub/3 handler for char type.
2019-10-24 16:29:22 +02:00
Fedor Isakov
2e2cfd5194
Enable generation of samples known to be valid.
2019-10-24 13:29:55 +02:00
Fedor Isakov
c81b88f636
Fix Lub test: proove that the result of ternary operation is correct. Enable compilation of "bounds" model.
2019-10-22 21:20:20 +02:00
Fedor Isakov
fdd7c7fb19
New language j.m.bl.javadocExt to contain types aspect for javadoc.
2019-10-22 21:20:20 +02:00
Fedor Isakov
94dae1c5a8
Fix buildscript for samples/mpscore (extract dependency).
2019-10-18 17:02:14 +02:00
Grigorii Kirgizov
7fb8ebd7c2
Fix one assert in incremental tests to correctly check nodes with type errors. Fixes last failing test.
2019-10-17 13:17:16 +03:00
Grigorii Kirgizov
ef93acd34a
Revert "Temporarily silence the last failing BL incrementality test"
...
This reverts commit 5aa7585b
2019-10-17 12:58:37 +03:00
Grigorii Kirgizov
d861fd5eb4
Add convertsTo_ground reflexive case.
...
At least convertsTo(stringType(), stringType()) was failing without it.
2019-10-17 12:33:17 +03:00
Grigorii Kirgizov
5aa7585bea
Temporarily silence the last failing BL incrementality test
2019-10-15 21:31:29 +03:00
Grigorii Kirgizov
0fdc2ada2a
Rewrite BL Recover base rules to make dependencies between rules visible (i.e. to actually reeval 'eval' predicates in rules incrementally)
2019-10-15 21:29:07 +03:00
Grigorii Kirgizov
28a82fd443
Revert "Temporarily disable failing tests in BLIncrTypecheck test case."
...
This reverts commit 1c1ddd6e
2019-10-15 18:01:21 +03:00
Fedor Isakov
6372f5a4a4
Experimental: cache the results of convertsTo/coerceTo queries.
...
The cache is repository-local and is invalidated on every command in that repository.
2019-10-12 09:35:09 +02:00
Fedor Isakov
c7ad048a9e
Completing the BL typesystem: rules for Minus- and ParethesizedExpression.
2019-10-12 09:35:09 +02:00
Fedor Isakov
1c1ddd6e5d
Temporarily disable failing tests in BLIncrTypecheck test case.
...
Tests started to fail after an argument was introduced to a constraint that is being
activated from a query -- recoverAll/1 now has a parameter.
2019-10-12 09:35:09 +02:00
Fedor Isakov
f8dcf127db
Extend typechecking query TYPECHECK with a parameter to report types.
...
Reporting of calculated types is to be more explicit.
The not-so-obvious _type_.set() operation is to be phased out.
2019-10-10 17:30:11 +02:00
Fedor Isakov
be81c982f1
Housekeeping in BL typesystem: organize artifacts using virtual folders.
2019-10-09 13:45:20 +02:00
Fedor Isakov
3d7f8688f5
Add new sample for testing typechecking performance.
2019-10-08 13:30:16 +02:00
Fedor Isakov
9914c3ba19
Add all descendants of classifier type as required.
2019-10-03 10:25:25 +02:00
Fedor Isakov
64a4be471f
Optimize typechecking of array literals. The errors are now reported on the literal itself.
...
In general one should avoid using `typeOf/2` constraint with first argument being a logical.
The indexing mechanism ensures efficient search of matching rules when at least one argument
is a constant value. However, when all arguments are free logicals, *all* matches should be
tested, which is highly ineffective.
2019-09-30 16:44:36 +02:00
Fedor Isakov
7210fd2cad
Drop checking for unique varname in BL typesystem.
2019-09-30 16:44:36 +02:00
Fedor Isakov
49518e0704
Switch to reactor version 0.9.14.
2019-09-30 16:44:36 +02:00
Grigorii Kirgizov
b362f55b25
Fix error annotations to be on args in method calls tests. Unsilence incremental tests, same arg fix.
2019-09-16 13:56:23 +03:00
Grigorii Kirgizov
c0e4bb1d1a
Fix reporting on argument nodes in MethodCall rules
2019-09-16 13:56:23 +03:00