<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otp.git/lib/syntax_tools/src, branch OTP-19.3.6.4</title>
<subtitle>Mirror of Erlang/OTP repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/'/>
<entry>
<title>Merge pull request #805 from matwey/fsf_addr</title>
<updated>2016-11-30T09:10:38+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bgustavsson@gmail.com</email>
</author>
<published>2016-11-30T09:10:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=e91fc9bcab7977969c105fa7b8d061dfd6c3ab3f'/>
<id>e91fc9bcab7977969c105fa7b8d061dfd6c3ab3f</id>
<content type='text'>
Fix FSF mail address</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix FSF mail address</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>
<entry>
<title>syntax_tools: Improve types</title>
<updated>2016-07-07T06:39:50+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2016-06-20T13:32:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=fab6d311d90b2361b7e719ffa07a72b76826a55b'/>
<id>fab6d311d90b2361b7e719ffa07a72b76826a55b</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: Make erl_tidy work on input file with tilde</title>
<updated>2016-07-06T08:13:36+00:00</updated>
<author>
<name>Mark Bucciarelli</name>
<email>mkbucc@gmail.com</email>
</author>
<published>2016-05-27T01:58:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=0969ecad9e2978bacb7b27f663cd16aa5ea6c460'/>
<id>0969ecad9e2978bacb7b27f663cd16aa5ea6c460</id>
<content type='text'>
See also http://bugs.erlang.org/browse/ERL-151.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
See also http://bugs.erlang.org/browse/ERL-151.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'hasse/dialyzer/improve_from_form/OTP-13547'</title>
<updated>2016-06-10T08:32:04+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2016-06-10T08:32:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=7dd54b5a89d382689562ea19e7ff96daf5b65290'/>
<id>7dd54b5a89d382689562ea19e7ff96daf5b65290</id>
<content type='text'>
* hasse/dialyzer/improve_from_form/OTP-13547:
  Update primary bootstrap
  stdlib: Correct types and specs
  dialyzer: Minor adjustments
  dialyzer: Suppress unmatched_return for send/2
  dialyzer: Improve the translation of forms to types
  dialyzer: Use a cache when translating forms to types
  dialyzer: Prepare erl_types:t_from_form() for a cache
  dialyzer: Optimize erl_types:t_form_form()
  dialyzer: Correct types
  syntax_tools: Correct types
  erts: Correct character repr in doc of the abstract format
  stdlib: Correct types and specs
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* hasse/dialyzer/improve_from_form/OTP-13547:
  Update primary bootstrap
  stdlib: Correct types and specs
  dialyzer: Minor adjustments
  dialyzer: Suppress unmatched_return for send/2
  dialyzer: Improve the translation of forms to types
  dialyzer: Use a cache when translating forms to types
  dialyzer: Prepare erl_types:t_from_form() for a cache
  dialyzer: Optimize erl_types:t_form_form()
  dialyzer: Correct types
  syntax_tools: Correct types
  erts: Correct character repr in doc of the abstract format
  stdlib: Correct types and specs
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove support for '...' in Maps types</title>
<updated>2016-06-09T13:13:05+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2016-06-09T11:18:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=af761914c9a94a9d54c1bcc2d4fff96a58674078'/>
<id>af761914c9a94a9d54c1bcc2d4fff96a58674078</id>
<content type='text'>
It is possible that '...' is added later (OTP 20.0), but for now we
are not sure of all details.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It is possible that '...' is added later (OTP 20.0), but for now we
are not sure of all details.
</pre>
</div>
</content>
</entry>
<entry>
<title>syntax_tools: Correct types</title>
<updated>2016-06-09T09:28:00+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2016-05-19T12:03:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=92ab1d0966b13a2a3ca7e77e1196d0099b633668'/>
<id>92ab1d0966b13a2a3ca7e77e1196d0099b633668</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>stdlib: Correct types and specs</title>
<updated>2016-06-09T09:28:00+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2016-05-19T06:59:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=fb49e45402c0370c030ce3c128b08bccf960bf44'/>
<id>fb49e45402c0370c030ce3c128b08bccf960bf44</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: Add support for new map type syntax</title>
<updated>2016-05-09T06:27:22+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2016-05-03T08:23:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=db39317ea85f7d8646b3da3d96f2f05954e16665'/>
<id>db39317ea85f7d8646b3da3d96f2f05954e16665</id>
<content type='text'>
The pretty-printing of `...' in map types is complex. The
representation of `...' can be changed before OTP 19.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The pretty-printing of `...' in map types is complex. The
representation of `...' can be changed before OTP 19.
</pre>
</div>
</content>
</entry>
</feed>
