Commit Graph

367 Commits

Author SHA1 Message Date
Adam Sampson
b2fb4ee22f Fix a record literal parsing bug (where array type folding confused it) 2007-05-11 02:03:26 +00:00
Adam Sampson
0337cf842f Constant-fold table elements 2007-05-11 01:58:34 +00:00
Adam Sampson
95cc912a2d Remove debugging 2007-05-11 01:58:24 +00:00
Adam Sampson
a8f0fc2caa Implement record literals 2007-05-05 00:26:26 +00:00
Adam Sampson
95d366ff40 Tidy up literal typing 2007-05-04 01:14:01 +00:00
Adam Sampson
afdd2c88e7 Fix parsing of field names 2007-05-03 23:15:24 +00:00
Adam Sampson
6a30c57f52 Resolve named types when checking conversions 2007-05-03 23:13:23 +00:00
Adam Sampson
4551d97b28 Make unsubscriptType produce the right types for slices 2007-05-03 20:21:19 +00:00
Adam Sampson
ed847a1ea9 Do array assignment check at runtime, and produce better metadata 2007-05-03 18:07:22 +00:00
Adam Sampson
a17ee03393 Rework how array contexts are handled in actuals 2007-05-03 17:44:26 +00:00
Adam Sampson
c6e062cde0 Resolve user types for subscripts and case selectors 2007-05-03 03:53:06 +00:00
Adam Sampson
47ecfd5670 Make the constant folder (minimally) aware of named types 2007-05-03 03:38:32 +00:00
Adam Sampson
043e8e1114 Recurse into array types 2007-05-03 03:38:25 +00:00
Adam Sampson
de36b66c8d Handle the Map types in ParseState 2007-05-03 03:31:09 +00:00
Adam Sampson
f84ce0e5c2 Allow empty formal lists too 2007-05-03 03:11:55 +00:00
Adam Sampson
4b0e02a4ce Apply dimensions to string literals too 2007-05-03 03:10:20 +00:00
Adam Sampson
0c1413c8da Fix formal parsing 2007-05-03 02:58:17 +00:00
Adam Sampson
3d897a70fd Rework (but don't yet fix) formalArgSet 2007-05-03 02:43:01 +00:00
Adam Sampson
200619042d Implement user datatypes 2007-05-03 02:17:53 +00:00
Adam Sampson
4d9c4176a8 Don't pull named types 2007-05-03 00:11:11 +00:00
Adam Sampson
0271fbc1d7 Add some bad retype testcases 2007-05-03 00:09:20 +00:00
Adam Sampson
ff3bd7fd71 Split UserDataType and Record 2007-05-02 23:44:27 +00:00
Adam Sampson
5480262836 Allow genBytesIn' of channels 2007-05-02 22:13:29 +00:00
Adam Sampson
db79a4f3e6 Prune traversals of the AST (speeds up from 90s to 20s for ats1-q7) 2007-05-02 21:51:35 +00:00
Adam Sampson
a90fefefb2 Use Maps for things that should be maps 2007-05-02 20:14:44 +00:00
Adam Sampson
c55137c7f4 Better runtime checks for RETYPEs 2007-05-02 14:22:56 +00:00
Adam Sampson
13dccaba4d Fix "? CASE tag" parsing in ALTs 2007-05-02 13:18:41 +00:00
Adam Sampson
b6881e9ea6 Defer RETYPES safety check until runtime 2007-05-02 02:32:06 +00:00
Adam Sampson
8cb163051c Support Byte/Int/Int16/Int32/Int64 in the evaluator.
I found a use for "forall"...
2007-05-02 01:45:32 +00:00
Adam Sampson
d5ac929685 Improvements to the constant folder (array subscript support) 2007-05-02 00:55:00 +00:00
Adam Sampson
4510f523cb Permit BOOL as CASE selector, and make sure selectors are constant 2007-05-02 00:40:57 +00:00
Adam Sampson
43e36f11d0 Make genBytesIn work on arrays with unknown dimensions 2007-05-02 00:34:19 +00:00
Adam Sampson
164aa15ad3 Implement channel retyping 2007-05-02 00:07:39 +00:00
Adam Sampson
c3841b6395 Make \ work correctly with negative numbers 2007-05-01 23:47:07 +00:00
Adam Sampson
478ee9de79 Make real-to-int conversion actually round or truncate 2007-05-01 23:29:54 +00:00
Adam Sampson
189e850093 Implement \ for REAL32 and REAL64 2007-05-01 23:27:37 +00:00
Adam Sampson
01f3a769fd Allow VAL RETYPE to scalar types 2007-05-01 23:22:42 +00:00
Adam Sampson
e8a38a6f02 Expand out array literals inside literals 2007-05-01 23:04:00 +00:00
Adam Sampson
287fb8b922 Ignore ROUND/TRUNC when used on a precise conversion (e.g. REAL64 ROUND real64) 2007-05-01 14:31:36 +00:00
Adam Sampson
26a4190d78 Allow #INCLUDEd files to contain processes 2007-05-01 14:29:36 +00:00
Adam Sampson
f6f5dff849 Add profiling options 2007-05-01 00:53:18 +00:00
Adam Sampson
5ffe4de9ad Support (but ignore in the code generator for now) PLACE AT/IN 2007-04-30 23:24:37 +00:00
Adam Sampson
618ad6d55f Implement INLINE PROC and INLINE FUNCTION 2007-04-30 23:08:32 +00:00
Adam Sampson
77949846ca Ignore unrecognised preprocessor directives 2007-04-30 22:56:56 +00:00
Adam Sampson
73dc1c7057 Make TIMER arguments work 2007-04-30 22:30:15 +00:00
Adam Sampson
b3b17f7611 occam BYTE is unsigned -- use uint8_t 2007-04-30 19:49:08 +00:00
Adam Sampson
db8782dfcf Don't blow up when taking 0-length slices 2007-04-30 19:41:09 +00:00
Adam Sampson
8fae7c4015 Handle IsExpr SubscriptedExpr properly when pulling up 2007-04-30 17:02:50 +00:00
Adam Sampson
25a9595273 TODO items from this week's meeting 2007-04-30 17:02:39 +00:00
Adam Sampson
8460eea254 Parse channel array abbreviations after channel IS abbreviations 2007-04-30 16:38:01 +00:00