<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libsyntax/parse, branch 1.28.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.28.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.28.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2018-06-19T02:17:52+00:00</updated>
<entry>
<title>Auto merge of #51278 - EPashkin:fix_mod_with_multilevel_paths_on_windows, r=nikomatsakis</title>
<updated>2018-06-19T02:17:52+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2018-06-19T02:17:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ed39523406fea9d4c82f87f4ac9ad92388084123'/>
<id>urn:sha1:ed39523406fea9d4c82f87f4ac9ad92388084123</id>
<content type='text'>
Fix processing mod with multi-level path on Windows

Fix error in [rustfmt](https://github.com/rust-lang-nursery/rustfmt/issues/1754) because libsyntax can not handle `mod` with multilevel path on Windows.

Alternative is do almost same in https://github.com/rust-lang/rust/blob/master/src/libstd/sys/windows/fs.rs#L717 to allow work on paths with different separators, Ex. "\\\\?\\c:\\windows/temp"
</content>
</entry>
<entry>
<title>Auto merge of #51549 - PSeitz:patch-1, r=kennytm</title>
<updated>2018-06-17T14:05:43+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2018-06-17T14:05:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9181741ede48e0f7b8a0cdf838fd09cc4b1aa1c2'/>
<id>urn:sha1:9181741ede48e0f7b8a0cdf838fd09cc4b1aa1c2</id>
<content type='text'>
Follow up to #51508, make parse_block public instead parse_block_expr

This is an follow up to #51508

I mistakenly made parse_block_expr public instead of parse_block.
This fixes this.
</content>
</entry>
<entry>
<title>Auto merge of #51425 - QuietMisdreavus:thats-def-a-namespace-there, r=petrochenkov</title>
<updated>2018-06-17T09:48:10+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2018-06-17T09:48:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=594b05dd9786c09c916745c1b1c281a3c54cdbd1'/>
<id>urn:sha1:594b05dd9786c09c916745c1b1c281a3c54cdbd1</id>
<content type='text'>
refactor: create multiple HIR items for imports

When lowering `use` statements into HIR, they get a `Def` of the thing they're pointing at. This is great for things that need to know what was just pulled into scope. However, this is a bit misleading, because a `use` statement can pull things from multiple namespaces if their names collide. This is a problem for rustdoc, because if there are a module and a function with the same name (for example) then it will only document the module import, because that's that the lowered `use` statement points to.

The current version of this PR does the following:

* Whenever the resolver comes across a `use` statement, it loads the definitions into a new `import_map` instead of the existing `def_map`. This keeps the resolutions per-namespace so that all the target definitions are available.
* When lowering `use` statements, it looks up the resolutions in the `import_map` and creates multiple `Item`s if there is more than one resolution.
* To ensure the `NodeId`s are properly tracked in the lowered module, they need to be created in the AST, and pulled out as needed if multiple resolutions are available.

Fixes https://github.com/rust-lang/rust/issues/34843
</content>
</entry>
<entry>
<title>Follow up on https://github.com/rust-lang/rust/pull/51508, make parse_block public instead parse_block_expr</title>
<updated>2018-06-16T06:00:14+00:00</updated>
<author>
<name>PSeitz</name>
<email>PSeitz@users.noreply.github.com</email>
</author>
<published>2018-06-14T08:18:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b1c0857f6246c3359c1e40a2a39d938f267ee2a4'/>
<id>urn:sha1:b1c0857f6246c3359c1e40a2a39d938f267ee2a4</id>
<content type='text'>
This is an follow up to #51508

I mistakenly made parse_block_expr public instead of parse_block.
This fixes this.
</content>
</entry>
<entry>
<title>Auto merge of #50296 - cmdd:master, r=nikomatsakis</title>
<updated>2018-06-15T19:05:25+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2018-06-15T19:05:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=967c1f3be1c9ce0469ae9e30659bdf4da5346a9f'/>
<id>urn:sha1:967c1f3be1c9ce0469ae9e30659bdf4da5346a9f</id>
<content type='text'>
Add error message for using &gt;= 65535 hashes for raw string literal escapes

Fixes #50111.
</content>
</entry>
<entry>
<title>create multiple HIR items for a use statement</title>
<updated>2018-06-14T22:47:28+00:00</updated>
<author>
<name>QuietMisdreavus</name>
<email>grey@quietmisdreavus.net</email>
</author>
<published>2018-06-13T16:44:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=122b5b47c2d8387a5095c3cac50fe11c9aaf1369'/>
<id>urn:sha1:122b5b47c2d8387a5095c3cac50fe11c9aaf1369</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #51502 - jebrosen:pub_parse_methods, r=Mark-Simulacrum</title>
<updated>2018-06-12T17:22:53+00:00</updated>
<author>
<name>Mark Rousskov</name>
<email>mark.simulacrum@gmail.com</email>
</author>
<published>2018-06-12T17:22:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1e06b1757c843c4cda538327dbd325378c539bfe'/>
<id>urn:sha1:1e06b1757c843c4cda538327dbd325378c539bfe</id>
<content type='text'>
Make parse_seq_to_end and parse_path public

(see SergioBenitez/Rocket#660, rust-lang/rust#51265)

Rocket currently uses `parse_seq_to_end` and `parse_path` in its codegen macros. Assuming I tested correctly, this is the minimal set of methods that are currently necessary to build Rocket again. I would be happy to add documentation of this and Rocket's other usages, if desired.
</content>
</entry>
<entry>
<title>Auto merge of #51508 - PSeitz:master, r=Mark-Simulacrum</title>
<updated>2018-06-12T11:06:09+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2018-06-12T11:06:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a1aae290d5560b45353071dc5be7554df5e6f72b'/>
<id>urn:sha1:a1aae290d5560b45353071dc5be7554df5e6f72b</id>
<content type='text'>
Make span_fatal and parse_block public

span_fatal and parse_block  were made private in #51265. These methods are used in stainless.

Related #51498 #51504
</content>
</entry>
<entry>
<title>Make span_fatal and parse_block public</title>
<updated>2018-06-11T19:19:12+00:00</updated>
<author>
<name>PSeitz</name>
<email>PSeitz@users.noreply.github.com</email>
</author>
<published>2018-06-11T19:19:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6fd9ede0cd3a3c73e44a8fdbbb3cabfb622d2a7f'/>
<id>urn:sha1:6fd9ede0cd3a3c73e44a8fdbbb3cabfb622d2a7f</id>
<content type='text'>
span_fatal and parse_block  were made private in #51265. These methods are used in stainless.

Related #51498 #51504</content>
</entry>
<entry>
<title>Make parse_seq_to_end and parse_path public</title>
<updated>2018-06-11T16:40:58+00:00</updated>
<author>
<name>jeb</name>
<email>jeb@jebrosen.com</email>
</author>
<published>2018-06-11T16:40:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=7e56261fcbdaa8d039ee507911f8e5e886de1e41'/>
<id>urn:sha1:7e56261fcbdaa8d039ee507911f8e5e886de1e41</id>
<content type='text'>
</content>
</entry>
</feed>
