aboutsummaryrefslogtreecommitdiff
path: root/frontend
AgeCommit message (Collapse)AuthorFilesLines
2009-11-26remove preprocessor for Clean 1.3 codejohnvg1-42/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1754 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-10-12fix bug in fusion that may occur if a recursive function that containsjohnvg1-25/+29
more than one recursive call is fused with a case that is not at the root, previously the recursive calls could get different function indices, causing the compiler to crash git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1753 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-07-29fix bug that may occur if a let variable is used in another let in an ↵johnvg2-12/+39
alternative of a case and is also used in another alternative, these lets were not added to the list of lets closed by cases, now they are, and the let will be reopened in the other alternative git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1751 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-07-29fix bug that may occur if a let is used in a case inside another case,johnvg1-92/+119
and also in another alternative of the outside case, if a let is used in a case, close the let, but if the let is used in another alternative of the case, reopen the let, these lets are collected in rms_counted_let_vars git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1750 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-07-29mark pattern and rhs of case alternative with one fullRefMark instead of twojohnvg1-11/+6
(for patterns with variables) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1749 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-07-29fix selective uses in refMarkOfVariable if used completely and by selectorjohnvg1-39/+48
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1748 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-07-29remove some unused code, fix some typosjohnvg1-67/+36
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1747 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-07-28fix uniqueness type bug (not detected because of bug in refmark)johnvg3-9/+6
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1746 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-07-28mark strict vars with VI_StrictLetVar, transform case of such a varjohnvg2-5/+7
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1745 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-07-28create new fv_info_ptr's for strict lets in distributeLets, because otherwisejohnvg2-68/+18
backendpreprocess may number variables incorrectly, causing a crash in backend.dll, renamed VI_CaseVar to VI_CaseOrStrictLetVar git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1744 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-07-01prevent compiler crash if a dynamic type contains a type constructor variable,johnvg1-16/+18
for example: Start = dynamic length git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1743 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-06-15report an error if a non unique * annotated type T is inferred in a function ↵johnvg1-20/+28
type git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1742 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-06-11restore all modified pointers (prevents compiler crash if anjohnvg1-1/+1
explicit import of a type is missing on a cycle of definition modules) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1741 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-06-05make function add_new_variable global instead of localjohnvg1-6/+5
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1740 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-06-05fix for existential/universal type variables of kind > *johnvg1-37/+25
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1739 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-06-05remove some commentsjohnvg1-6/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1738 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-06-05fix for existential/universal type variables of kind > *johnvg1-41/+34
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1737 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-06-05remove some commentsjohnvg1-10/+6
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1736 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-06-05keep case_explicit, instead of setting case_explicit to False for alljohnvg1-168/+98
Case expressions (including cases not usings dynamics) in functions using dynamics. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1735 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-05-14add dynamic_type_used result at wantModule callsjohnvg1-2/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1734 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-05-14report error if type Dynamic is used without importing StdDynamic,johnvg2-10/+12
instead of crash in backend git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1733 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-05-14pass use of type Dynamic from parser to checkModulejohnvg1-3/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1732 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-05-14remember use of type Dynamicjohnvg2-53/+47
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1731 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-04-29bug fix: initialize atype_vars1 as intendedjohnvg1-3/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1730 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-02-25prevent compiler crash when check import completeness of a generic functionjohnvg1-0/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1729 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-02-25add explicit import of generic functionsjohnvg3-11/+21
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1728 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-02-25replace type ImportedIdent by Ident because ii_extended is not usedjohnvg5-46/+30
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1727 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2008-11-10use a loop to adjust predefined symbols of dynamics and genericsjohnvg1-73/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1704 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2008-11-10make indices of predefined types and expressions of dynamics and genericsjohnvg2-197/+105
consecutive, use a loop to initialise these types and expressions git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1703 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2008-10-28remove fields gen_cases and gen_star_cases because they are notjohnvg3-41/+1
used and may cause the compiler to crash if generic definitions and instances occur on a cycle of definition modules git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1702 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2008-05-19fix conversion of nested guards that may fail, incorrect code was generatedjohnvg1-10/+31
for: f True True = True; f _ _ = False git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1701 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2008-04-10remove unnecessary import from _aconcatjohnvg1-2/+0
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1700 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2008-04-09report an error if a type context is specified multiple times in a function typejohnvg1-5/+8
(instead of abort) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1699 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2008-03-26handle NewType in function isTypeSynonymjohnvg1-0/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1697 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2008-01-03move function remove_first_n from backendinterface to containersjohnvg2-0/+20
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1696 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-12-21make function has_observing_type fasterjohnvg1-3/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1695 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-12-21don't mark strict and unboxed arrays as hyperstrict (causes incorrectjohnvg1-2/+2
observation typeing) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1694 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-12-20update ft_arity of generated dcl functions, if this field is not updated, fusionjohnvg1-5/+3
can crash because arguments can be incorrectly analyzed as unused git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1693 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-11-20correct previous commitjohnvg1-1/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1692 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-11-20do not allow a . before (c a) in the type of a constructor,johnvg1-2/+2
because all attributes of c should have the same attribute git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1691 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-11-20remove ExclamationToken from context independent tokens tojohnvg1-1/+0
prevent error for: !+! a b -> a !+! a b = a git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1690 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-11-20remove is_pattern argument from functionsjohnvg1-5/+5
want_array_assignments and want_array_assignment git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1689 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-11-20change error: type variable of type of lifted argument .. appears in the ↵johnvg1-2/+2
specified type git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1688 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-09-11make a![i] unique in yielded element if the yielded array is used only byjohnvg2-25/+231
{a & [i]= } expressions, instead of [i] a sequence of record and array selections may be used. ending with an array selection git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1687 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-09-10rename NormalSelectorUniqueElementResult as UniqueSelectorUniqueElementResult,johnvg4-30/+40
use UniqueSingleArraySelector for a![i] instead of NormalSelector and add UniqueSingleArraySelectorUniqueElementResult git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1686 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-09-05use an integer instead of a string in GenTypeVarjohnvg2-17/+25
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1685 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-09-05use bimapId instead of bimap{|*|} for variablesjohnvg2-18/+26
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1684 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-09-04add more position information for error messages in generatorsjohnvg1-17/+15
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1683 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-08-21make elements of array generators unique (for arrays with unique elements)johnvg1-4/+3
by using a unique selection with unique result, instead of "uselect" git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1680 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-04-19remove VI_Defined and VI_LocallyDefined because they are not used anymorejohnvg1-1/+0
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1679 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d