aboutsummaryrefslogtreecommitdiff
path: root/frontend/check.icl
AgeCommit message (Collapse)AuthorFilesLines
2001-02-22bugfix: explicit imports of instances did not work in conjunction with dclmartinw1-0/+18
caching git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@300 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-02-19bugfix: a function that made some types in StdArray.dcl more strict hadmartinw1-34/+45
to be delayed until a whole dcl module component has been checked git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@299 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-02-15DynamicTemp added to the compiler. You will be needing a newmartijnv1-2/+12
StdEnv 2.0 in which DynamicTemp is added. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@297 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-02-13delaying "determineTypesOfInstances" and "checkSpecialsOfInstances" aftermartinw1-130/+166
checking of a whole dcl module component --> now cyclic module dependencies should work git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@294 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-01-19bugfixing dcl cashing, expanding synonym types after a whole module componentmartinw1-196/+205
has been checked, refactoring git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@291 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-01-12New algorithm for explicit imports that also works with cyclic module ↵martinw1-260/+918
dependencies git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@286 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-11-01improved code for explicit imports,martinw1-25/+16
moved all switches to syntax module git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@277 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-10-27moving huge part of code out of check into new module checkFunctionBodiesmartinw1-1966/+11
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@272 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-10-26bug fix in copying abstract types from dcl module to icl modulejohnvg1-7/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@271 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-10-26added new error messagesmartinw1-3/+4
"context restriction not allowed for fully polymorph instance" and "context restriction equals instance type" git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@270 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-10-23renumber icl function and macro indices when unfoldingjohnvg1-14/+49
dcl macros in icl functions and macros removed expanded macros from groups (s.c.components) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@259 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-10-11added error messagesmartinw1-1/+12
"first argument of infix operator missing" and "second argument of infix operator missing" git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@256 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-10-04-added position information for let bindings for better error messagesmartinw1-79/+97
(changes are commented with "MW0") git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@248 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-09-27making compiler self compatiblemartinw1-16/+19
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@237 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-09-27optimizations and caching of dcl modules (without trans.icl)clean1-203/+501
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@232 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-09-20improving error messages:martinw1-9/+31
before: _from_to undefined _uselect undefined now: StdEnum not imported StdArray not imported git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@218 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-09-13added position information for better error messagesmartinw1-14/+23
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@214 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-08-15improved typing error messages: type variables are printed like "a" insteadmartinw1-8/+8
of "v314", case defaults and guards now also have file position information. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@202 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-08-10added position information to case defaults to improve type error messagesmartinw1-15/+24
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@201 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-08-09added position information to case alternatives and changed the typingmartinw1-77/+106
algorihm so that typing error messages can indicate the alternative in which the error occured. Before, these error messages always located the first alternative/function type git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@200 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-08-01improving error messagesmartinw1-11/+16
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@196 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-07-14De predefined symbols worden in check.icl aangepast. Hetmartijnv1-0/+3
nieuwe PD_coerce-symbool werd nog niet aangepast. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@192 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-07-10optimised consequence checking for explicit importsmartinw1-20/+43
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@183 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-07-03no messageclean1-1/+4
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@179 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-07-03no messageclean1-4/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@178 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-06-21solving the problem of strict aliases. Now a strict aliasmartinw1-19/+23
#! x = y will be transformed into #! x = _dummyForStrictAlias y while checking. The new predefined symbol _dummyForStrictAlias has the type of the identity function. This application will be removed in the backend conversion phase. In this case x and y will simply get the same sequence number (see module backendpreprocess). Then the binding can be ignored. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@177 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-06-16added error message "not a record constructor", e.g. in the following case:martinw1-0/+3
:: T :== Int f = { T | f1 = blub } git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@170 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-06-16small changes to reduce memory allocationclean1-10/+14
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@167 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-06-14optimisation: compareDefImp now only compares those definitions that aremartinw1-2/+9
really redundant, but not those which are added automatically by the compiler to the icl module git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@160 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-05-31readableizing error messagesmartinw1-3/+4
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@147 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-05-26bugfix: The following letmartinw1-1/+2
#! (a, b) = f was originally translated into #! _x = f #! a = _x.0 #! b = _x.1 which is wrong. Now a an b are in a lazy context git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@142 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-05-03bugfixmartinw1-6/+7
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@133 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-04-26bugfixmartinw1-2/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@130 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-04-26Merge Martin/ Sjaak & Ronny branchesclean1-8/+30
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@127 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-04-26changes to make compiler compatible with itselfmartinw1-169/+220
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@126 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-03-30comparision of redundant macro definitionsmartinw1-2/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@123 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-03-24bugfixesmartinw1-22/+25
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@122 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-03-17 - making array patterns strict (strict lets were not properly handledmartinw1-30/+26
in "convertCasesOfFunctionsIntoPatterns" and "collectVariables") - new switch "SwitchUniquenessBug" in module checksupport - several bugfixes git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@114 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-03-14extended array patterns for muitidimensional arraysmartinw1-15/+25
bugfix git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@111 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-02-21- implemented comparison between redundant definitions in icl and dcl modulesmartinw1-224/+351
(new module: comparedefimp) - implemented array patterns. Further work: arrays are in lazy context (should be strict), currently only one dimensional arrays - optimised memory usage for explicit imports git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@94 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-02-15bug fix (unboxed arrrays of records)ronny1-0/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@89 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-01-19check.icl: improving bugfix that yielded revision 1.15martinw1-83/+34
trans.icl: improving sjaaks changes that yielded revision 1.17 parse.icl: bugfix: The following program led into "could not determine the type of this record" module t5 :: R1 = { f :: Int } :: R2 = { f :: Int } :: R3 = { g :: R1 } g x = { x & g.R1.f = 1 } git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@80 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-01-19bug fix (changed syntax tree)sjakie1-6/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@79 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-01-17Bug fixessjakie1-113/+13
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@77 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-01-17removing some abort statements in checkmartinw1-24/+15
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@76 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-01-13- check.icl: solved check-bug-11:martinw1-33/+211
Check Error [case_bug.icl,18,f]:"_" illegal combination of patterns f t = case t of {(a,2) -> 1; _ | False -> 2; (a,b) -> 3;}; - typesupport.icl: small typo - trans.icl: small optimisation git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@75 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-01-04introduced new error message: "StdDynamics not imported"martinw1-6/+41
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@72 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
1999-12-14Bug fix: infix pattern constructorssjakie1-22/+20
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@65 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
1999-12-10bugfixesmartinw1-122/+130
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@63 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
1999-12-01Several bug fixes:sjakie1-3/+3
- dictionary arguments added properly - coercion of function types git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@61 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d