Commit graph

443 commits

Author SHA1 Message Date
Graydon Hoare
26ecec4e12 Update frame logic to be compatible with SysV x86 ABI. Improves diagnostics. 2010-11-16 13:51:32 -08:00
Graydon Hoare
fce535c04a Change PVAL_num to PVAL_int and remove non-int literal forms. 2010-11-13 22:39:41 -08:00
Graydon Hoare
ae570016a4 Remove dead code in cexp. 2010-11-13 22:34:48 -08:00
Graydon Hoare
d1e7f0b414 Redo the scheme for block context chaining and termination, to simplify and support ret better. 2010-11-10 17:46:49 -08:00
Graydon Hoare
89946609f2 Support a special const-value refcount, use it for const strings. 2010-11-09 14:15:07 -08:00
Graydon Hoare
3e9be14757 Add a check for binding an alias. Good thing, as we had two instances in our library. 2010-11-08 15:45:30 -08:00
Graydon Hoare
c5720b2fc4 Fix linux burn caused by last commit on friday. 2010-11-08 13:36:03 -08:00
Graydon Hoare
049072db82 Update lltrans to also emit WinMain@16 on windows. 2010-11-05 18:45:06 -07:00
Patrick Walton
de166745b8 rustboot: Report the alias-ness of function parameters in type errors 2010-11-05 18:27:34 -07:00
Patrick Walton
79015e2d59 rustboot: If something that wasn't a type was found where a type was expected, report where the error was 2010-11-05 17:31:35 -07:00
Patrick Walton
91b1885ba2 rustboot: Report mismatched effect qualifiers 2010-11-05 13:44:37 -07:00
Patrick Walton
e399926776 rustboot: Report cyclic import errors at the right location 2010-11-05 11:02:17 -07:00
Patrick Walton
a58016d43e rustboot: Describe the cycle when reporting a cyclic import error 2010-11-05 10:37:32 -07:00
Patrick Walton
896570a3a9 rustboot: When resolving recursively, build up error messages recursively as well 2010-11-03 19:15:16 -07:00
Patrick Walton
db955d33b7 rustboot: Say exactly which name was unbound when reporting unbound name errors 2010-11-03 18:42:35 -07:00
Graydon Hoare
1e22a55ff2 Code sketch and comment notes on textual crate signatures. 2010-11-03 09:50:25 -07:00
Graydon Hoare
7abf6eb7c6 Shift obj, type, param decls to have strata rather than effects. 2010-11-02 17:20:57 -07:00
Graydon Hoare
7db115834f Split out stratum-checking pass, implement more-strict (overly aggressive) impure-effect checking. 2010-11-02 15:24:46 -07:00
Graydon Hoare
da13c508d8 First pass on splitting stratum and opacity off of effects. WIP. 2010-11-02 11:11:58 -07:00
Patrick Walton
67bcc70754 rustboot: Emit an error instead of asserting in trans when a T is passed by value 2010-10-28 15:07:05 -07:00
Patrick Walton
b914e0e74c Revert "rustboot: Emit an error instead of asserting in trans when a T is passed by value" due to test failures
This reverts commit ee901858a2.
2010-10-28 15:04:48 -07:00
Patrick Walton
ee901858a2 rustboot: Emit an error instead of asserting in trans when a T is passed by value 2010-10-28 15:02:00 -07:00
Patrick Walton
679dca8541 Emit a sensible error message if one or more of the parameters isn't enough context to instantiate a polymorphic function 2010-10-27 15:06:19 -07:00
Patrick Walton
b3c4c1426a rustboot: Emit an error message instead of asserting on a type-param mismatch in tag constructors in patterns 2010-10-27 11:29:19 -07:00
Patrick Walton
3d0da75455 rustboot: For error reporting, map tag IDs to *tag* names, not to tag *variant* names 2010-10-26 15:37:49 -07:00
Patrick Walton
7e3c662b4f rustboot: Use a less hacky method to report tag names in error messages, which works for resolve errors as well 2010-10-26 14:52:31 -07:00
Patrick Walton
7ed8b781d5 Thread a source location though for type error reporting instead of the awful "List.hd scopes" hack 2010-10-25 18:16:34 -07:00
Patrick Walton
1875a36fee Prevent Not_found in the unfortunate case when we have to "friendly_stringify" a tag type we haven't yet recorded into cx.ctxt_all_tag_info 2010-10-25 17:58:24 -07:00
Patrick Walton
fc8b5155a8 rustboot: If the user tries to instantiate a non-parametric type with type parameters, report the location of the error 2010-10-22 15:12:48 -07:00
Patrick Walton
194f38fdff rustboot: Don't use ridiculous type names when describing simple types like int and uint 2010-10-21 11:31:04 -07:00
Patrick Walton
a7840f02b0 Use "friendly" type names when reporting a "mismatched type-params" error 2010-10-21 11:14:38 -07:00
Patrick Walton
9a539a5dd1 Move the "friendly" type printer to semant 2010-10-20 17:58:55 -07:00
Patrick Walton
11deb2f5f1 Eliminate <tag#> stuff from the "friendly" type errors 2010-10-20 15:36:30 -07:00
Patrick Walton
4bb675ba42 Print better error messages when the number of type params is wrong 2010-10-20 11:22:44 -07:00
Graydon Hoare
7801ba9dfe Make type errors in rustboot report the friendly type of both expected and actual. 2010-10-18 14:36:17 -07:00
Graydon Hoare
57c7e94c8f Encode and decode tag types in dwarf properly. Add list module to std. Shift rustc to use std.util.option. Fix various dependent bugs. Closes #73. 2010-10-15 22:09:09 -07:00
Graydon Hoare
5a51716790 Fix mem += mem bug in vec-append. 2010-10-14 15:51:54 -07:00
Graydon Hoare
09b12d167f Fix typos in Type.friendly_stringify. 2010-10-14 15:27:50 -07:00
Patrick Walton
c7ab80f743 Typecheck tags in "alt" patterns 2010-10-14 15:08:19 -07:00
Graydon Hoare
f234750d80 Fix crasher in rustc. 2010-10-14 12:41:48 -07:00
Graydon Hoare
668f3a90a8 Move the friendly-names table to semant, reuse it in the name mangler. 2010-10-13 17:15:25 -07:00
Graydon Hoare
52c2a1549c Fetch typarams from the outermost item frame, when inside an iter-block. One less crash in rustc. 2010-10-13 15:53:38 -07:00
Patrick Walton
1e19fc969e Use "friendly" types throughout the typechecker 2010-10-13 15:34:18 -07:00
Patrick Walton
e129a9b4ce Use the user-defined type aliases when reporting type errors 2010-10-13 15:14:04 -07:00
Graydon Hoare
69ae63d4b0 Fix horribly embarassing signedness bug in backend, plus related regressions. 2010-10-12 16:51:27 -07:00
Graydon Hoare
beb4c07e26 Git index wins again. 2010-10-12 12:28:46 -07:00
Graydon Hoare
76f7b043bc Changes to make rustboot compile on OCaml 3.12 2010-10-12 12:16:35 -07:00
Patrick Walton
99086292ac Bind labels explicitly in fe/cexp.ml. Should fix issue #169. 2010-10-11 10:51:57 -07:00
Graydon Hoare
594cf63214 Remove obsolete comment, issue was fixed with last checkin. 2010-10-10 00:17:41 -07:00
Graydon Hoare
caaf8679d8 Teach bind to actually bind typarams, as it claims to. 2010-10-10 00:14:26 -07:00