Commit Graph

8 Commits

Author SHA1 Message Date
Dmitri Gribenko
d175b3b66d Migrate FileCheck to %FileCheck in tests 2016-08-10 23:52:02 -07:00
Manav Gabhawala
7928140f79 [SE-0046] Implements consistent function parameter labels by discarding extraneous parameter names and adding _ where necessary 2016-04-06 20:21:58 -04:00
Chris Lattner
82e5c0c592 Update various tests to stop using ++/-- 2015-12-21 18:07:37 -08:00
David Farler
9aa7663ad3 Always debugPrint containers' elements
rdar://problem/19312992

Swift SVN r31067
2015-08-07 06:14:19 +00:00
Arnold Schwaighofer
859fbc0162 More executable_test for the test directory
Swift SVN r29280
2015-06-03 23:28:51 +00:00
Dmitri Hrybenko
f46f16ae82 stdlib: implement new print() API
rdar://20775683

Swift SVN r28309
2015-05-08 01:37:59 +00:00
John McCall
a884e045c4 Bind optional l-values during their formal evaluation.
Previously, we were binding optional l-values only when
performing an access.  This meant that other evaluations
emitted before the formal access were not being
short-circuited, even if the language rules said they
should be.  For example, consider this code::

  var array : [Int]? = ...
  array?[foo()] = bar()

Neither foo nor bar should be called if the array is
actually nil, because those calls are sequenced after
the optional-chaining operator ?.

The way that we currently do this is to project out
the optional address during formal evaluation.  This
means that there's a formal access to that storage
beginning with the formal evaluation of the l-value
and lasting until the operation is complete.  That's
a little controversial, because it means that other
formal accesses during that time to the optional
storage will have unspecified behavior according to
the rules I laid out in the accessors proposal; we
should talk about it and make a decision about
whether we're okay with this behavior.  But for now,
it's important to at least get the right short-circuiting
behavior from ?.

Swift SVN r23608
2014-12-02 01:16:53 +00:00
Joe Groff
4ce7d0f3ad Enable optional lvalues.
This causes a regression in error reporting where there are potential fixes: <rdar://problem/17741575> Other than that, everything works.

Swift SVN r20230
2014-07-20 18:16:42 +00:00