Commit Graph

164 Commits

Author SHA1 Message Date
Stevie Strickland
4e8064e8a5 Change it so that it uses strings instead of symbols here.
svn: r11697
2008-09-12 19:01:13 +00:00
Stevie Strickland
19cfe4e49e I hate this kind of error checking.
svn: r11696
2008-09-12 18:55:11 +00:00
Stevie Strickland
019c2c8c34 Handle strings as blame, now add a description of the type of contract
boundary that triggered the contract error.

svn: r11695
2008-09-12 18:49:08 +00:00
Stevie Strickland
b309ced851 Appropriately check the context.
svn: r11693
2008-09-12 18:17:40 +00:00
Stevie Strickland
3b44bca1d5 Remove the introducer, which isn't being used anyway.
svn: r11692
2008-09-12 18:13:20 +00:00
Stevie Strickland
ac576f5085 There's nothing quasi about the body, so just go with regular syntax
(and change the quote-syntax uses to just #')

svn: r11690
2008-09-12 17:09:42 +00:00
Stevie Strickland
e53d5c43ff Just indention.
svn: r11689
2008-09-12 16:59:00 +00:00
Stevie Strickland
ea206c7b3d Go back to the old style.
svn: r11688
2008-09-12 16:48:33 +00:00
Stevie Strickland
e2c770ab45 So we _can_ do this, but since provides/requires are between modules, and
thus it's the enclosing module that made the contract here, we should
blame it for the misuse, not the contract boundary in which the call was
made (though further thought should be put towards this).

svn: r11687
2008-09-12 16:39:11 +00:00
Stevie Strickland
f191636cc7 Use the same info here as the provide/contract -contract uses do.
svn: r11685
2008-09-12 16:20:38 +00:00
Stevie Strickland
a44810f4f5 More error checking, shouldn't have allowed (define/contract x number? 1 2),
for example.

svn: r11680
2008-09-12 15:19:29 +00:00
Stevie Strickland
33d3cb7cd0 Have provide/contract-transformers appropriately check to see whether we
are within a with-contract scope.  Not quite sure if this code is 100%
correct (in terms of being written apprropiately), but it does the job for now.

svn: r11676
2008-09-12 14:51:26 +00:00
Stevie Strickland
68aa941b87 Since we allow non-identifiers here now (as long as they'd be appropriate
name + argument lists a la define), this case will never fire.

svn: r11662
2008-09-11 23:25:43 +00:00
Stevie Strickland
cc6d39e217 More error reporting.
svn: r11661
2008-09-11 23:19:34 +00:00
Stevie Strickland
f4dd7e85fe We should make sure the error here at least has define/contract in it (even
if it's the wrong shape due to leaving the contract out in the call), and we
_should_ check to see if we're in a expression context.  (Can't remember what
reasoning Ryan had about not doing this, but it seems to me that we still
need to check, since this expands into defines of various sorts.)

svn: r11660
2008-09-11 23:11:38 +00:00
Stevie Strickland
e1f430df72 We should use the name of the form in generating the error.
svn: r11659
2008-09-11 22:58:25 +00:00
Stevie Strickland
249f3db1b5 Add identifier checking and contract verification where appropriate.
svn: r11658
2008-09-11 22:43:19 +00:00
Stevie Strickland
430374358e Allow unprotected identifiers to be exported from with-contract, plus
do some error checking on that list.

svn: r11651
2008-09-11 21:01:14 +00:00
Stevie Strickland
1621335290 * Make define/contract have an implicit begin
* Change with-contract's implicit begin into begin-with-definitions

svn: r11650
2008-09-11 20:38:09 +00:00
Stevie Strickland
eb676359c9 There might be a simpler way of writing this, but my kung macro isn't yet
up to par if so.

svn: r11649
2008-09-11 17:49:29 +00:00
Stevie Strickland
16399b7827 Add in nicer version for function definitions.
svn: r11648
2008-09-11 17:36:43 +00:00
Stevie Strickland
c1fa0fe0ed Now have define/contract use the new with-contract form.
svn: r11647
2008-09-11 17:01:01 +00:00
Stevie Strickland
e5ed38fedc This wasn't used in define/contract either.
svn: r11646
2008-09-11 16:52:08 +00:00
Stevie Strickland
cb07ceefff Thanks to Sam and Carl, finally got this working like I wanted it.
svn: r11645
2008-09-11 16:51:36 +00:00
Stevie Strickland
8cbc41042e Pull out the querying of current-contract-region (even though it doesn't
work), as we shouldn't be forming the if clause (here a cond) in the syntax
(as it should be evaluated at expansion time).

svn: r11642
2008-09-11 13:51:03 +00:00
Stevie Strickland
55f89f2da8 This doesn't quite work (neither does syntax-parameterize), but at least
it gives us an idea of where we're going and I can bug Ryan tomorrow :D

svn: r11637
2008-09-11 02:09:28 +00:00
Stevie Strickland
a7d5a2aaef Reordering the definitions so that define/contract and its helpers are
in one section and the same for provide/contract (instead of them being
mixed as before).

svn: r11636
2008-09-10 21:46:13 +00:00
Matthew Flatt
1a8b6cb824 fix mistakes in augment corrections; fix runtime-path handling of lib paths
svn: r11577
2008-09-08 19:44:32 +00:00
Matthew Flatt
74addc1b71 fix checking of augment on a method that is overridable but was formerly augmentable
svn: r11574
2008-09-08 14:41:56 +00:00
Robby Findler
2ece9d9e95 PR 9729
svn: r11567
2008-09-07 12:46:17 +00:00
Eli Barzilay
e508264945 typo (PR9726)
svn: r11554
2008-09-05 18:13:49 +00:00
Robby Findler
44b62899fa improved blame error message when there is no source location
svn: r11526
2008-09-02 16:12:13 +00:00
Robby Findler
300d1361a1 added planet bug report icon
svn: r11522
2008-09-02 12:46:12 +00:00
Robby Findler
facfe60934 svn: r11513 2008-09-01 20:30:04 +00:00
Robby Findler
5596aff30f improved contract error messages so that they now always have absolute module references in them for blame information
svn: r11511
2008-09-01 19:54:50 +00:00
Matthew Flatt
c09b9baae8 fix stxparam bug (from Olin via Sam)
svn: r11304
2008-08-18 22:19:18 +00:00
Matthew Flatt
0715f3d7f9 fix rationalize on inexact arguments
svn: r11215
2008-08-13 10:52:53 +00:00
Matthew Flatt
d0419345d8 clean up extended in-vector, in-string, and in-bytes
svn: r11124
2008-08-07 12:13:21 +00:00
Noel Welsh
ed0bd51c8b Add support for start/stop/step parameters to in-vector comprehension forms. Vector like comprehensions (strings etc) actually support this as well, when used in the body of the for comprehension. However this will not be documented as support do not extend to sequences defined outside a comprehension.
svn: r11068
2008-08-04 18:38:47 +00:00
Matthew Flatt
16b04d0328 fix syntax pattern-matching bug (PR 9643)
svn: r10989
2008-07-30 19:45:59 +00:00
Matthew Flatt
8140b3644e add 'bitwise-bit-set?' and 'in-value' (v4.0.2.6)
svn: r10971
2008-07-29 19:27:33 +00:00
Matthew Flatt
616ec71325 fix for/or and for/and when one of the clauses binds multiple values
svn: r10926
2008-07-26 21:38:39 +00:00
Matthew Flatt
763d37d775 properties can now effectively inherit properties (v4.0.2.5)
svn: r10848
2008-07-21 17:04:25 +00:00
Eli Barzilay
5a7ce88ac0 added filtered-in and -out
svn: r10826
2008-07-17 23:02:56 +00:00
Matthew Flatt
9af00fcfb4 v4.0.2.4: logging
svn: r10818
2008-07-17 15:20:17 +00:00
Eli Barzilay
91fb6ffce0 move sandbox-coverage to scheme/private
svn: r10690
2008-07-09 07:20:51 +00:00
Eli Barzilay
7d50e61c7f * Newlines at EOFs
* Another big chunk of v4-require-isms
* Allow `#lang framework/keybinding-lang' for keybinding files
* Move hierlist sources into "mrlib/hierlist", leave stub behind

svn: r10689
2008-07-09 07:18:06 +00:00
Robby Findler
4993e26b0a PR 9442
svn: r10603
2008-07-04 20:22:33 +00:00
Matthew Flatt
9707770ace fix phase problem in 'make-namespace' form 'mzscheme'
svn: r10478
2008-06-27 18:36:31 +00:00
Matthew Flatt
da82fe2a2d eval and phases (4.0.1.2)
svn: r10452
2008-06-25 18:54:38 +00:00