<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otp.git/lib/syntax_tools/src, branch maint-20</title>
<subtitle>Mirror of Erlang/OTP repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/'/>
<entry>
<title>syntax_tools: Fix a bug regarding reverting map types.</title>
<updated>2018-06-14T10:50:18+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2018-05-30T10:52:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=1f7f0b9d4c1607fb4e27f6508a46b8794408f86c'/>
<id>1f7f0b9d4c1607fb4e27f6508a46b8794408f86c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update runtime deps to depend on new stdlib functionality</title>
<updated>2017-09-19T10:54:58+00:00</updated>
<author>
<name>Dan Gudmundsson</name>
<email>dgud@erlang.org</email>
</author>
<published>2017-09-19T10:54:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=5bc277e16e359072bba4c872de31ea486d77e042'/>
<id>5bc277e16e359072bba4c872de31ea486d77e042</id>
<content type='text'>
~tw and new string functions are new since OTP-20 (stdlib-3.4)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
~tw and new string functions are new since OTP-20 (stdlib-3.4)
</pre>
</div>
</content>
</entry>
<entry>
<title>syntax_tools: add 'unicode' option to re:run for matching paths</title>
<updated>2017-09-05T09:31:56+00:00</updated>
<author>
<name>Siri Hansen</name>
<email>siri@erlang.org</email>
</author>
<published>2017-08-25T10:08:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=4bf9c5a5cc52a0ce76fbec638deff0ff88a5dfd8'/>
<id>4bf9c5a5cc52a0ce76fbec638deff0ff88a5dfd8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>syntax_tools: Improve handling of Unicode</title>
<updated>2017-09-05T09:02:26+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2017-07-06T10:21:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=080cda86ca973abe172179c006999802a11614e9'/>
<id>080cda86ca973abe172179c006999802a11614e9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>syntax_tools: erl_tidy: Do not hang when exits are trapped</title>
<updated>2017-06-22T07:16:34+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2017-06-16T08:22:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=9408d05ad6789496aab395cdcaf51625b95732cc'/>
<id>9408d05ad6789496aab395cdcaf51625b95732cc</id>
<content type='text'>
See also ERL-413, https://bugs.erlang.org/browse/ERL-413.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
See also ERL-413, https://bugs.erlang.org/browse/ERL-413.
</pre>
</div>
</content>
</entry>
<entry>
<title>syntax_tools: Fix Syntax Tools regarding Unicode atoms</title>
<updated>2017-04-07T06:57:27+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2017-03-31T08:17:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=73657a28e74f8ad12ddb4fea49272a74f5b823c3'/>
<id>73657a28e74f8ad12ddb4fea49272a74f5b823c3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update use of filename:find_src/1 in igor.erl</title>
<updated>2017-02-06T14:36:21+00:00</updated>
<author>
<name>Richard Carlsson</name>
<email>richardc@klarna.com</email>
</author>
<published>2017-02-03T10:52:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=e381a8a0334b9a1556b9a7e97205734261e39ffa'/>
<id>e381a8a0334b9a1556b9a7e97205734261e39ffa</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update Syntax Tools license headers</title>
<updated>2016-11-23T15:34:27+00:00</updated>
<author>
<name>Richard Carlsson</name>
<email>richardc@klarna.com</email>
</author>
<published>2015-07-08T15:22:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=883344f8e14d579ff5a9a0a1c160094fced85977'/>
<id>883344f8e14d579ff5a9a0a1c160094fced85977</id>
<content type='text'>
This makes it clear that Apache 2.0 applies, without dropping the old LGPL
licensing, and makes all the Syntax Tools file headers look the same as
upstream.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This makes it clear that Apache 2.0 applies, without dropping the old LGPL
licensing, and makes all the Syntax Tools file headers look the same as
upstream.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix documentation of an option of erl_tidy</title>
<updated>2016-08-31T15:07:30+00:00</updated>
<author>
<name>Pierre Fenoll</name>
<email>pierrefenoll@gmail.com</email>
</author>
<published>2016-08-29T18:08:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=7b0981fe8ec30961dc723ee5fdb4b9f911493df1'/>
<id>7b0981fe8ec30961dc723ee5fdb4b9f911493df1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix infinite loop in merl_transform</title>
<updated>2016-07-09T15:21:27+00:00</updated>
<author>
<name>Péter Gömöri</name>
<email>gomoripeti@gmail.com</email>
</author>
<published>2016-07-09T15:21:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=fee45935eb7f5a098cbbbaf1c8d1a8f9a77ce418'/>
<id>fee45935eb7f5a098cbbbaf1c8d1a8f9a77ce418</id>
<content type='text'>
This can happen when a syntactically incorrect text is passed to a
merl:qquote/2,/3 call.

The parse transform optimizes calls to some functions in merl by
converting strings into templates at compile time. If this evaluation
fails (in eval_call/4 - for example because of a sytanx error in the
parsed text) the original function call should be kept unchanged.
However in case of qquote/3 the call is converted into a combination of
quote/2 and subst/2, but upon failure the original qquote/3 call is
substituted into the wrong place. E.g.:

this expression
  merl:qquote(Pos, Text, Env)

is first converted to
  merl:subst(merl:quote(Pos, Text), Env)

then if evaluating the quote call fails into
  merl:subst(merl:qquote(Pos, Text, Env), Env)

and the expansion is run again on the internal qquote/3 argument
resulting in an infinite loop.

This is now fixed so in case of failure the original qquote/3 call is kept.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This can happen when a syntactically incorrect text is passed to a
merl:qquote/2,/3 call.

The parse transform optimizes calls to some functions in merl by
converting strings into templates at compile time. If this evaluation
fails (in eval_call/4 - for example because of a sytanx error in the
parsed text) the original function call should be kept unchanged.
However in case of qquote/3 the call is converted into a combination of
quote/2 and subst/2, but upon failure the original qquote/3 call is
substituted into the wrong place. E.g.:

this expression
  merl:qquote(Pos, Text, Env)

is first converted to
  merl:subst(merl:quote(Pos, Text), Env)

then if evaluating the quote call fails into
  merl:subst(merl:qquote(Pos, Text, Env), Env)

and the expansion is run again on the internal qquote/3 argument
resulting in an infinite loop.

This is now fixed so in case of failure the original qquote/3 call is kept.
</pre>
</div>
</content>
</entry>
</feed>
