tock-mirror/common
Adam Sampson b1416bb0cf Change A.Dimension to take an Expression, not an Int.
This touches an awful lot of code, but cgtest07/17 (arrays and retyping) pass.

This is useful because there are going to be places in the future where we'll
want to represent dimensions that are known at runtime but not at compile time
-- for example, mobile allocations, or dynamically-sized arrays. It simplifies
the code in a number of places.

However, we do now need to be careful that expressions containing variables do
not leak into the State, since they won't be affected by later passes.

Two caveats (marked as FIXMEs in the source):

- Retypes checking in the occam parser is disabled, since the plan is to move
  it out to a pass anyway.
- There's some (now very obvious) duplication, particularly in the backend, of
  bits of code that construct expressions for the total size of an array
  (either in bytes or elements); this should be moved to a couple of helper
  functions that everything can use.
2008-03-18 16:45:38 +00:00
..
CommonTest.hs Made decompN check the constructor, and added a short test accordingly 2008-02-25 13:39:28 +00:00
Errors.hs Changed the error reporting so that we at least print the meta tag if we can't open the file to find the line 2008-02-11 01:15:56 +00:00
EvalConstants.hs Change A.Dimension to take an Expression, not an Int. 2008-03-18 16:45:38 +00:00
EvalLiterals.hs Fixed signed hexed values in the constant folder 2008-02-27 14:00:28 +00:00
Intrinsics.hs Implement the RESCHEDULE intrinsic. 2008-03-15 11:00:11 +00:00
Pattern.hs Added the -fwarn-missing-signatures option and added all missing type signatures for non-test modules (and most for test modules too) 2008-02-05 23:06:03 +00:00
PrettyShow.hs Initial implementation of the occam-pi preprocessor. 2008-02-28 20:27:30 +00:00
ShowCode.hs Change A.Dimension to take an Expression, not an Int. 2008-03-18 16:45:38 +00:00
TestFramework.hs Moved all the testPass* functions into the TestMonad, using unsafePerformIO for running them inside QuickCheck 2008-03-05 16:06:14 +00:00
TestHarness.hs Remove now-unused code for running timed tests. 2008-03-12 18:21:22 +00:00
TestUtils.hs Change A.Dimension to take an Expression, not an Int. 2008-03-18 16:45:38 +00:00
TreeUtils.hs Moved all the testPass* functions into the TestMonad, using unsafePerformIO for running them inside QuickCheck 2008-03-05 16:06:14 +00:00
Types.hs Change A.Dimension to take an Expression, not an Int. 2008-03-18 16:45:38 +00:00
Utils.hs Change A.Dimension to take an Expression, not an Int. 2008-03-18 16:45:38 +00:00