Skip to content

Rollup of 6 pull requests #26798

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 249 commits into from
Jul 5, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
249 commits
Select commit Hold shift + click to select a range
1cf6a82
README: make it clear rustc is the compiler
tshepang Jun 17, 2015
5ff8e03
doc: Make it easier to find the std docs from the index
brson Jun 21, 2015
b890b7b
StrSearcher: Update substring search to use the Two Way algorithm
Jun 14, 2015
a6dd203
StrSearcher: Specialize is_prefix_of/is_suffix_of for &str
Jun 17, 2015
71006bd
StrSearcher: Use trait to specialize two way algorithm by case
Jun 21, 2015
0adda45
book: fix sentence
tshepang Jun 22, 2015
e13077f
book: whitespace
tshepang Jun 22, 2015
599bf45
Indent code past the widest line number
tbelaire May 1, 2015
c5dfd34
Added unit test for code indent of multi-line errors
Jun 23, 2015
274bb24
StrSearcher: Explicitly separate the long and short cases
Jun 24, 2015
225b116
Make `align_of` behave like `min_align_of`.
huonw May 20, 2015
1ec520a
mk: Move logic out of MSVC's 64-bit cfg makefile
alexcrichton Jun 19, 2015
91d799e
msvc: Implement runtime support for unwinding
alexcrichton Jun 19, 2015
9e3cb64
rustc_trans: Handle empty dlls on MSVC
alexcrichton Jun 25, 2015
759a7f1
test: Use liblibc in lang-item-public
alexcrichton Jun 25, 2015
3f178b8
Fix links in release notes.
brson Jun 25, 2015
74fbe3e
Correct typos and remove unused references from RELEASES.md
barosl Jun 25, 2015
8e3ea5d
Ignore KDevelop 4 (and 5 pre-release) project files
CruzBishop Jun 25, 2015
35abf86
Improve sentence flow.
adamheins Jun 25, 2015
44bccd8
Rename AsPredicate to ToPredicate in order to match naming conventions
jroesch Jun 23, 2015
b70d1c6
Auto merge of #26415 - jroesch:rename-as-predicate, r=nikomatsakis
bors Jun 26, 2015
fd9b2ca
Correct a missing reference in the release note.
omasanori Jun 26, 2015
378a370
Auto merge of #25646 - huonw:align, r=alexcrichton
bors Jun 26, 2015
aa03871
rustc: combine type-flag-checking traits and fns and into one trait.
eddyb Jun 23, 2015
59935f7
rustc: move some functions in middle::ty working on Ty to methods.
eddyb Jun 24, 2015
2332765
rustc: prefer unqualified `ctxt` to `ty::ctxt` in middle::ty.
eddyb Jun 24, 2015
6db5126
rustc: make ty::mk_* constructors into methods on ty::ctxt.
eddyb Jun 25, 2015
5cedd66
rustc: remove 3 dead functions in middle::ty.
eddyb Jun 25, 2015
ad66c21
rustc: switch most remaining middle::ty functions to methods.
eddyb Jun 25, 2015
6c88a28
Add E0091 error explanation
GuillaumeGomez Jun 26, 2015
2051b3e
Avoid storing fat pointers as first class aggregates
dotdash Jun 26, 2015
2cb8a31
Auto merge of #26595 - dotdash:fca_slice, r=eddyb
bors Jun 26, 2015
30cde07
std: clean up duplicated attrs and comment on panic
richo Jun 26, 2015
0d74311
Add E0088 error explanation
GuillaumeGomez Jun 26, 2015
c98e46c
accessing private fields is not safe, and io isn't scary
Gankra Jun 26, 2015
9001da6
make book match reference
Gankra Jun 26, 2015
1032384
Auto merge of #26568 - barosl:rel-notes-refs, r=alexcrichton
bors Jun 26, 2015
532235b
Use Box::into_raw rather than the deprecated boxed::into_raw in tests…
Ms2ger Jun 26, 2015
0f6d4aa
core: fix deprecation since version of align_of_min.
huonw Jun 26, 2015
cb7d062
Auto merge of #26605 - Ms2ger:raw-doc, r=alexcrichton
bors Jun 26, 2015
1aabbd0
Initial documentation for 1.2.0, uploading to test markdown
CruzBishop Jun 26, 2015
773052a
Auto merge of #26574 - brson:relnotes-fix, r=alexcrichton
bors Jun 27, 2015
d3c03d0
Auto merge of #26569 - alexcrichton:msvc-llvm-update, r=brson
bors Jun 27, 2015
650566e
Auto merge of #26575 - eddyb:tycx, r=nikomatsakis
bors Jun 27, 2015
ec232c8
Rollup merge of #26565 - Techern:ignore-kdevelop, r=brson
Manishearth Jun 27, 2015
1ce9b59
Rollup merge of #26584 - omasanori:fix-26537, r=alexcrichton
Manishearth Jun 27, 2015
0bf0ea3
Rollup merge of #26596 - richo:richo-cleanup-macros, r=alexcrichton
Manishearth Jun 27, 2015
6dd33b4
Rollup merge of #26603 - Gankro:ref, r=steveklabnik
Manishearth Jun 27, 2015
04daae7
Auto merge of #26579 - Techern:start-12-doc, r=brson
bors Jun 27, 2015
d73cc56
Add E0109 error explanation
GuillaumeGomez Jun 27, 2015
b36ae01
Auto merge of #26609 - huonw:align, r=alexcrichton
bors Jun 27, 2015
ca0601a
std: someone missed removing this doc and the annotations
tshepang Jun 27, 2015
7d0198d
test: fix some indents
tshepang Jun 27, 2015
2ba46f8
Auto merge of #26616 - Manishearth:rollup, r=Manishearth
bors Jun 27, 2015
d6159b7
Clarifying deallocation order of resources within same scope
saser Jun 27, 2015
8fa2185
Auto merge of #26621 - tshepang:missed-removal, r=steveklabnik
bors Jun 27, 2015
ae36d4f
mk: Add support for i686-pc-windows-msvc
alexcrichton Jun 25, 2015
5de665e
rustc_back: Learn about i686-pc-windows-msvc
alexcrichton Jun 25, 2015
8790958
std: Avoid missing fns on i686-pc-windows-msvc
alexcrichton Jun 25, 2015
79d0289
Begin refactor type checking state
jroesch Jun 24, 2015
480cd8f
Ground work for replacing the ClosureTyper trait
jroesch Jun 25, 2015
e5b3684
Remove ClosureTyper impl for FnCtxt
jroesch Jun 26, 2015
ba7b47e
rustc_driver: Fix incorrect comment
richo Jun 26, 2015
9e58fb8
rt: Update comment for new location of unwind
richo Jun 26, 2015
10b103a
std: Fix Windows XP compatibility
alexcrichton Jun 26, 2015
15bc4a3
Address nits
jroesch Jun 26, 2015
5da0d41
Auto merge of #26601 - alexcrichton:xp, r=brson
bors Jun 28, 2015
c1b8bd2
Auto merge of #26631 - richo:comment-updates, r=steveklabnik
bors Jun 28, 2015
5c3753f
Fix librustc_driver/test.rs
jroesch Jun 28, 2015
78ec055
Add `.write(true)` to append and truncate examples
remram44 Jun 28, 2015
2671e8c
Auto merge of #26642 - remram44:doc-openoptions-missing-write, r=alex…
bors Jun 28, 2015
a973e4c
Auto merge of #26582 - jroesch:infer-ctxt-refactor, r=nikomatsakis
bors Jun 29, 2015
9b6fe6c
Add tip to do partial compile.
pelmers Jun 29, 2015
f07b11d
mk: Fix a typo in the tips
richo Jun 29, 2015
14e3d26
Add E0110 error explanation
GuillaumeGomez Jun 27, 2015
b442530
Add more details in error explanation
GuillaumeGomez Jun 29, 2015
7f830a8
The come back of the "a" eaten by the void
GuillaumeGomez Jun 29, 2015
4adcc78
Rollup merge of #26593 - GuillaumeGomez:patch-2, r=Manishearth
Manishearth Jun 29, 2015
1659075
Rollup merge of #26644 - pelmers:make_stage_tip, r=sfackler
Manishearth Jun 29, 2015
08a8ee1
Rollup merge of #26645 - richo:makefile-typo, r=sfackler
Manishearth Jun 29, 2015
40db46c
Auto merge of #26649 - Manishearth:rollup, r=Manishearth
bors Jun 29, 2015
b4f3c58
Hide the Rand trait from docs
steveklabnik Jun 29, 2015
216f664
Auto merge of #26462 - brson:stdidx, r=steveklabnik
bors Jun 29, 2015
34f35a5
Auto merge of #26530 - steveklabnik:gh26471, r=alexcrichton
bors Jun 29, 2015
a1110bc
Fix off-by-one error in default-type-parameter checking
Jun 29, 2015
8d6b568
Change removal notice for pointer guide.
steveklabnik Jun 29, 2015
f9b6929
Auto merge of #26623 - Saser:master, r=steveklabnik
bors Jun 29, 2015
b676e99
Fix incorrect warning about unused repr attributes.
Jun 29, 2015
08b2166
Refine Atomic*::compare_and_swap documentation
nagisa Jun 29, 2015
58ff6cc
Add test for #26646.
Jun 29, 2015
e8fe55f
Add missing trailing newline.
Jun 29, 2015
fe283b4
Auto merge of #26659 - nagisa:cas-docs, r=alexcrichton
bors Jun 29, 2015
f758baa
Improve doc for std::mem::drop
steveklabnik Jun 29, 2015
b1907a0
Update link to Ousterhout
steveklabnik Jun 29, 2015
9a26e49
Auto merge of #26660 - steveklabnik:fix_up_pointers, r=alexcrichton
bors Jun 29, 2015
bf164bc
Fix lifetime elision region accounting
Jun 29, 2015
336f812
Remove type_needs_unwind_cleanup
Jun 29, 2015
b1931e4
lint: only consider actual calls as unconditional recursion.
huonw Jun 29, 2015
900af2c
lint: default methods must be called on Self to unconditionally recur.
huonw Jun 29, 2015
a5e21da
Kill count_late_bound_regions
Jun 29, 2015
fb5dd39
Remove now-useless code
Jun 29, 2015
d8680f6
Add regression test for #17756
frewsxcv Jun 30, 2015
faa04a8
Auto merge of #26666 - huonw:unc-rec, r=alexcrichton
bors Jun 30, 2015
e834c03
Link to docs from error explanations via HTTPS
frewsxcv Jun 30, 2015
6419ace
Add regression test for #13902
frewsxcv Jun 30, 2015
27975c4
Auto merge of #26667 - arielb1:audit-walk, r=eddyb
bors Jun 30, 2015
e6596d0
Auto merge of #26668 - frewsxcv:regression-test-17756, r=alexcrichton
bors Jun 30, 2015
bbf0daa
Add parent_node to ast_map
nrc Jun 16, 2015
b23ddc6
Implement get_enclosing_scope and use it in save-analysis
nrc Jun 16, 2015
15dcb5b
Alternate method
nrc Jun 25, 2015
080d5b7
Auto merge of #26670 - frewsxcv:regression-test-13902, r=alexcrichton
bors Jun 30, 2015
6947948
Move FufillmentContext into InferContext
jroesch Jun 26, 2015
64f1a59
Update all uses of FulfillmentContext
jroesch Jun 28, 2015
0f13a3f
Use fresh FulfillmentContexts in select locations
jroesch Jun 28, 2015
fb295a6
Remove NormalizingClosureTyper
jroesch Jun 28, 2015
e2d7e90
Remove Typer + ClosureTyper impls for ParameterEnv
jroesch Jun 29, 2015
05c57e0
Remove Typer + ClosureTyper impls for BlockS
jroesch Jun 30, 2015
9faae6a
Remove Typer and ClosureTyper
jroesch Jun 30, 2015
7a8f83a
Clean up patch
jroesch Jun 30, 2015
f39df49
Auto merge of #26662 - steveklabnik:gh26661, r=alexcrichton
bors Jun 30, 2015
516941b
fmt: Update docs and mention :#? pretty-printing
Jun 30, 2015
0b70378
Auto merge of #26664 - steveklabnik:gh26571, r=alexcrichton
bors Jun 30, 2015
8536152
Auto merge of #26669 - frewsxcv:diagnostics-https, r=huonw
bors Jun 30, 2015
c158be0
Add E0195 error explanation
GuillaumeGomez Jun 29, 2015
20f22b7
Add E0093 error explanation
GuillaumeGomez Jun 30, 2015
ed6940f
Add E0094 error explanation
GuillaumeGomez Jun 30, 2015
0ba2db5
Add E0211 error explanation
GuillaumeGomez Jun 30, 2015
758ea34
Add E0092 error explanation
GuillaumeGomez Jun 30, 2015
edf6132
Add E0101 error explanation
GuillaumeGomez Jun 30, 2015
a481c4e
Add E0117 error explanation
GuillaumeGomez Jun 30, 2015
2881e83
Add E0207 error explanation
GuillaumeGomez Jun 30, 2015
be38926
Add E0119 error explanation
GuillaumeGomez Jun 30, 2015
8b25086
Deprecate BitSet and BitVec in favour of bit-vec and bit-set crates i…
Gankra Jun 5, 2015
bc1b43c
doc: add example for Stdin::read_line
tshepang Jun 27, 2015
7fc0675
Auto merge of #26327 - bluss:two-way, r=aturon
bors Jun 30, 2015
cebb118
Actually encode default associated types
Jun 30, 2015
9d64131
Rollup merge of #26373 - tshepang:patch-2, r=steveklabnik
steveklabnik Jun 30, 2015
96dd82f
Rollup merge of #26506 - tshepang:doc-fix, r=steveklabnik
steveklabnik Jun 30, 2015
bac3615
Rollup merge of #26580 - adamheins:master, r=steveklabnik
steveklabnik Jun 30, 2015
cf1c5b2
Rollup merge of #26622 - tshepang:indents, r=sanxiyn
steveklabnik Jun 30, 2015
825e48f
Rollup merge of #26627 - tshepang:stdin-example, r=steveklabnik
steveklabnik Jun 30, 2015
65b5c15
Rollup merge of #26651 - GuillaumeGomez:patch-2, r=Manishearth
steveklabnik Jun 30, 2015
26ff471
Rollup merge of #26678 - bluss:doc-fmt, r=steveklabnik
steveklabnik Jun 30, 2015
fdf219d
Auto merge of #26663 - Eljay:fix-repr-attribute, r=sanxiyn
bors Jun 30, 2015
2f45294
Clean-up assignment checking in borrowck
arielb1 Jun 17, 2015
a18d984
Make the unused_mut lint smarter with respect to locals.
arielb1 Jun 17, 2015
dc309d7
Auto merge of #26686 - arielb1:associated-type-defaults-actually-work…
bors Jun 30, 2015
8b81f76
Make note of Ord's derive ordering
steveklabnik Jun 30, 2015
08f9b98
Rollup merge of #26692 - steveklabnik:gh26620, r=alexcrichton
steveklabnik Jun 30, 2015
bf3c979
Auto merge of #26696 - steveklabnik:rollup, r=steveklabnik
bors Jun 30, 2015
98566ea
std: Fix formatting flags for chars
alexcrichton Jul 1, 2015
1fc0f68
Auto merge of #26698 - alexcrichton:char-fmt, r=huonw
bors Jul 1, 2015
a1d40c8
save-analysis: skip generated content in patterns
nrc Jul 1, 2015
8890089
std: Avoid the WSA_FLAG_NO_HANDLE_INHERIT option
alexcrichton Jun 29, 2015
a5dec98
Auto merge of #26703 - nrc:dxr-servo-fix, r=huonw
bors Jul 1, 2015
49b73e4
In js from the docs, change keyboard eventlistener to be compatible w…
azerupi Jun 30, 2015
a9e26b5
Auto merge of #26540 - oli-obk:issue11715, r=nrc
bors Jul 1, 2015
7dc50b1
Hide SampleRange trait from docs
Jul 1, 2015
d2e6dda
Add E0124 error explanation
GuillaumeGomez Jul 1, 2015
d4fe2a0
Auto merge of #26711 - bluss:doc-hide-rand, r=steveklabnik
bors Jul 1, 2015
9d67b9f
Auto merge of #26675 - azerupi:doc-js-keyevent, r=alexcrichton
bors Jul 1, 2015
5564172
Expand docs for recv
steveklabnik Jul 1, 2015
0ca7699
Add examples in error explanation E0267 and E0268
GuillaumeGomez Jul 1, 2015
28d2b39
Add E0277 error explanation
GuillaumeGomez Jul 1, 2015
c9c5ea7
Add a regression test for #8640.
Jul 1, 2015
7850c8d
fallout of bitvec/bitset deprecation
Gankra Jun 30, 2015
8a599c8
Auto merge of #26034 - Gankro:deprecate-bits, r=alexcrichton
bors Jul 1, 2015
d2cf9f9
Auto merge of #26658 - alexcrichton:windows-net-no-inherit, r=aturon
bors Jul 1, 2015
8bf4651
Implement CoerceUnsized for rc::Weak
remram44 Jul 1, 2015
ce089e5
Address nits
jroesch Jul 1, 2015
2fc8571
Fix deadlocks with RUST_LOG=rustc::middle::ty
Jul 1, 2015
8261599
Refactoring
nrc Jun 30, 2015
5976355
doc: there is just one trait in here
tshepang Jul 1, 2015
b643a0b
doc: add missing space
tshepang Jul 1, 2015
7713e14
Report memory use in time-passes
nrc Jun 28, 2015
5042182
Add test to dst-coerce-rc.rs
remram44 Jul 1, 2015
3278e79
Implement CoerceUnsized for arc::Weak
remram44 Jul 1, 2015
1768b10
Auto merge of #26688 - nrc:map-parent-2, r=manishearth
bors Jul 2, 2015
0b7c4f5
Add netbsd amd64 support
posix4e Jul 1, 2015
c64bda3
Update librustc_driver/test.rs
jroesch Jul 2, 2015
560b1da
Auto merge of #26677 - jroesch:fulfillment-context-refactor, r=nrc
bors Jul 2, 2015
b51aea3
rustdoc: Update jQuery from 2.1.0 to 2.1.4
nhowell Jul 2, 2015
dd8fee0
Auto merge of #26691 - nrc:mem, r=alexcrichton
bors Jul 2, 2015
969d6ca
Auto merge of #26718 - nham:test-8640, r=alexcrichton
bors Jul 2, 2015
f635b2f
Auto merge of #26722 - arielb1:log-deadlock, r=eddyb
bors Jul 2, 2015
c4b4f07
Auto merge of #26727 - remram44:coerceunsized-weak, r=eddyb
bors Jul 2, 2015
99ca63f
Auto merge of #26712 - GuillaumeGomez:patch-2, r=Manishearth
bors Jul 2, 2015
71a6441
Auto merge of #26715 - steveklabnik:gh26497, r=huonw
bors Jul 2, 2015
50cb22f
Auto merge of #26713 - GuillaumeGomez:patch-3, r=Manishearth
bors Jul 2, 2015
6809481
Auto merge of #26724 - tshepang:patch-1, r=bluss
bors Jul 2, 2015
95c08e3
Skip the pointless tupling/untupling of argument types in trans_closure
dotdash Jul 2, 2015
6b5edd2
Avoid a needless vector copy in type_of_rust_fn
dotdash Jul 2, 2015
a04784f
Directly construct lvalue datums for function arguments
dotdash Jul 2, 2015
57eed53
Add more description for from_raw_parts's unsafety
steveklabnik Jul 2, 2015
fb379ef
Auto merge of #26682 - posix4e:netbsd, r=alexcrichton
bors Jul 2, 2015
b4abed6
Auto merge of #26738 - dotdash:trans_args, r=luqmana
bors Jul 2, 2015
d77c4b0
Fix race condition in Arc's get_mut and make_unqiue
aturon Jun 26, 2015
d1e31f3
Auto merge of #26725 - tshepang:patch-2, r=bluss
bors Jul 2, 2015
f234a6b
Auto merge of #26733 - nhowell:update-jquery, r=steveklabnik
bors Jul 2, 2015
4a21775
Auto merge of #26610 - aturon:fix_make_unique, r=alexcrichton
bors Jul 3, 2015
4c246ec
Auto merge of #26740 - steveklabnik:gh26737, r=gankro
bors Jul 3, 2015
e2b6b02
Fix 'Relaaxed' typo in code comment
frewsxcv Jul 3, 2015
f3b97a7
Auto merge of #26752 - frewsxcv:patch-25, r=alexcrichton
bors Jul 3, 2015
f24089c
MYSY2 -> MSYS2
saschanaz Jul 3, 2015
eaeede2
Fix ICE caused by Drop implementations for unsized types
dotdash Jul 3, 2015
320bd6f
Auto merge of #26759 - dotdash:drop_dst, r=pnkfelix
bors Jul 3, 2015
409fc2f
Update atomic.rs
rick68 Jul 3, 2015
66f757b
remove some feature gates from the docs
steveklabnik Jul 3, 2015
7b14838
Auto merge of #26762 - rick68:patch-9, r=alexcrichton
bors Jul 3, 2015
f027bdc
Auto merge of #26378 - arielb1:unused-mut, r=pnkfelix
bors Jul 3, 2015
ef85338
Code up the new lifetime default rules, but leave them disabled
nikomatsakis Jun 17, 2015
9099577
Add a boolean flag to ExistentialBounds tracking whether the
nikomatsakis Jun 17, 2015
1e7a6b8
After inferring regions, scan for any bounds that are due to a lifetime
nikomatsakis Jun 17, 2015
18e9007
Adjust tests to silence warnings (or record them, as appropriate).
nikomatsakis Jun 17, 2015
65a456d
Now that I made the warning smarter, these tests no longer require mo…
nikomatsakis Jun 17, 2015
db5f3bc
Fix some merge conflicts
nikomatsakis Jun 24, 2015
50c952b
Auto merge of #26370 - nikomatsakis:better-object-defaults-warn, r=ni…
bors Jul 4, 2015
f9274d6
Auto merge of #26754 - SaschaNaz:patch-1, r=steveklabnik
bors Jul 4, 2015
fe354e5
rustc: remove unused MethodStaticClosure variant of MethodOrigin.
eddyb Jun 30, 2015
70365ed
rustc: simplify ty::MethodOrigin and avoid trait item indices.
eddyb Jul 2, 2015
a2fe59a
rustc_trans: explicit impl population is unnecessary in fulfill_oblig…
eddyb Jul 2, 2015
5620a58
rustc_lint: use traits::select for methods in unconditional_recursion.
eddyb Jul 2, 2015
a5447e1
rustc_trans: remove some outdated and unused logic from callee.
eddyb Jul 2, 2015
96d24a5
rustc: remove MethodOrigin::Object and use traits::VtableObject instead.
eddyb Jul 3, 2015
0dc0824
Auto merge of #26763 - steveklabnik:fix_feature_gates, r=sfackler
bors Jul 4, 2015
ace8670
Clean-up check_impl_items_against_trait
Jun 30, 2015
6b27005
require reimplementations of all items when a defaulted associated ty…
Jun 30, 2015
638ffec
Auto merge of #26728 - arielb1:assoc-maybe, r=nrc
bors Jul 4, 2015
0da6996
core: Use memcmp in is_prefix_of / is_suffix_of
bluss Jul 4, 2015
90fcf26
Remove outdated errors for mutating strings
Jul 4, 2015
c5a0a73
str: Correct documentation on is_char_boundary
bluss Jul 4, 2015
c83f8f9
Auto merge of #26770 - arielb1:str-mut-idx, r=eddyb
bors Jul 4, 2015
536e71b
rustc: compute the vtable base of a supertrait during selection. Fixe…
eddyb Jul 4, 2015
d256eb1
rustc: remove MethodOrigin and use the container to distinguish inher…
eddyb Jul 4, 2015
b381449
Auto merge of #26771 - bluss:str-prefix, r=Gankro
bors Jul 4, 2015
42e545f
Auto merge of #26694 - eddyb:method-nan, r=arielb1
bors Jul 4, 2015
e689342
Add missing #[inline] to min_value/max_value on integers
bluss Jul 4, 2015
f9f5809
Auto merge of #26776 - bluss:num-inline, r=eddyb
bors Jul 4, 2015
4fc28c9
reference: improve readability of type inference explanations for flo…
tshepang Jul 5, 2015
72c0275
reference: make tuple usage examples more meaningful
tshepang Jul 5, 2015
f76187c
reference: that looks like exclamations marks for some fonts
tshepang Jul 5, 2015
08395a9
Rollup merge of #26785 - tshepang:inference, r=steveklabnik
steveklabnik Jul 5, 2015
ec37d45
Rollup merge of #26787 - tshepang:tuple-usage, r=steveklabnik
steveklabnik Jul 5, 2015
a5f9162
Rollup merge of #26788 - tshepang:not-exclamation-marks, r=steveklabnik
steveklabnik Jul 5, 2015
89d7dd1
Rollup merge of #26795 - tshepang:typo, r=steveklabnik
steveklabnik Jul 5, 2015
73c1f24
reference: tiny fixes
tshepang Jul 5, 2015
3b3cdb1
Rollup merge of #26791 - tshepang:misc-ref-fixes, r=steveklabnik
steveklabnik Jul 5, 2015
da90ddb
reference: improve lambda example
tshepang Jul 5, 2015
9d23df4
Rollup merge of #26792 - tshepang:follow-idiom, r=steveklabnik
steveklabnik Jul 5, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
*.exe
*.fn
*.html
*.kdev4
*.ky
*.ll
*.llvm
Expand Down
3 changes: 2 additions & 1 deletion Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@
# * tidy-basic - show file / line stats
# * tidy-errors - show the highest rustc error code
# * tidy-features - show the status of language and lib features
# * rustc-stage$(stage) - Only build up to a specific stage
#
# Then mix in some of these environment variables to harness the
# ultimate power of The Rust Build System.
Expand Down Expand Up @@ -90,7 +91,7 @@
#
# # Rust recipes for build system success
#
# // Modifying libstd? Use this comment to run unit tests just on your change
# // Modifying libstd? Use this command to run unit tests just on your change
# make check-stage1-std NO_REBUILD=1 NO_BENCH=1
#
# // Added a run-pass test? Use this to test running your test
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Rust is a fast systems programming language that guarantees
memory safety and offers painless concurrency ([no data races]).
It does not employ a garbage collector and has minimal runtime overhead.

This repo contains the code for `rustc`, the Rust compiler, as well
This repo contains the code for the compiler (`rustc`), as well
as standard libraries, tools and documentation for Rust.

[no data races]: http://blog.rust-lang.org/2015/04/10/Fearless-Concurrency.html
Expand Down Expand Up @@ -73,7 +73,7 @@ Read ["Installing Rust"] from [The Book].
```

3. Run `mingw32_shell.bat` or `mingw64_shell.bat` from wherever you installed
MYSY2 (i.e. `C:\msys`), depending on whether you want 32-bit or 64-bit Rust.
MSYS2 (i.e. `C:\msys`), depending on whether you want 32-bit or 64-bit Rust.

4. Navigate to Rust's source code, configure and build it:

Expand Down
28 changes: 19 additions & 9 deletions RELEASES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
Version 1.2.0 (August 2015)
===========================

Highlights
----------

* [Parallel codegen][parcodegen] is now working again, which can substantially
speed up large builds in debug mode; It also gets another ~33% speedup when
bootstrapping on a 4 core machine (using 8 jobs). It's not enabled by default,
but will be "in the near future"


[parcodegen]: https://github.com/rust-lang/rust/pull/26018


Version 1.1.0 (June 2015)
=========================

Expand All @@ -6,7 +21,7 @@ Version 1.1.0 (June 2015)
Highlights
----------

* The [`std::fs` module has been expanded][fs-expand] to expand the set of
* The [`std::fs` module has been expanded][fs] to expand the set of
functionality exposed:
* `DirEntry` now supports optimizations like `file_type` and `metadata` which
don't incur a syscall on some platforms.
Expand All @@ -23,11 +38,11 @@ Highlights
Libraries
---------

* The `str::split_whitespace` method splits a string on unicode
* The [`str::split_whitespace`] method splits a string on unicode
whitespace boundaries.
* On both Windows and Unix, new extension traits provide conversion of
I/O types to and from the underlying system handles. On Unix, these
traits are [`FrowRawFd`] and [`AsRawFd`], on Windows `FromRawHandle`
traits are [`FromRawFd`] and [`AsRawFd`], on Windows `FromRawHandle`
and `AsRawHandle`. These are implemented for `File`, `TcpStream`,
`TcpListener`, and `UpdSocket`. Further implementations for
`std::process` will be stabilized later.
Expand Down Expand Up @@ -79,8 +94,7 @@ Misc
* [The `drop_with_repr_extern` lint warns about mixing `repr(C)`
with `Drop`][drop].

[`split_whitespace`]: http://doc.rust-lang.org/nightly/std/primitive.str.html#method.split_whitespace
[`Iterator::cloned`]: http://doc.rust-lang.org/nightly/core/iter/trait.Iterator.html#method.cloned
[`str::split_whitespace`]: http://doc.rust-lang.org/nightly/std/primitive.str.html#method.split_whitespace
[`FromRawFd`]: http://doc.rust-lang.org/nightly/std/os/unix/io/trait.FromRawFd.html
[`AsRawFd`]: http://doc.rust-lang.org/nightly/std/os/unix/io/trait.AsRawFd.html
[`std::os::unix::symlink`]: http://doc.rust-lang.org/nightly/std/os/unix/fs/fn.symlink.html
Expand Down Expand Up @@ -250,7 +264,6 @@ Misc
[sw]: https://github.com/rust-lang/rfcs/blob/master/text/1054-str-words.md
[th]: https://github.com/rust-lang/rfcs/blob/master/text/0909-move-thread-local-to-std-thread.md
[send-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0458-send-improvements.md
[scoped]: http://static.rust-lang.org/doc/master/std/thread/fn.scoped.html
[moar-ufcs]: https://github.com/rust-lang/rust/pull/22172
[prim-inherent]: https://github.com/rust-lang/rust/pull/23104
[overflow]: https://github.com/rust-lang/rfcs/blob/master/text/0560-integer-overflow.md
Expand All @@ -260,12 +273,10 @@ Misc
[string-pattern]: https://github.com/rust-lang/rust/pull/22466
[oibit-final]: https://github.com/rust-lang/rust/pull/21689
[reflect]: https://github.com/rust-lang/rust/pull/23712
[debug-builder]: https://github.com/rust-lang/rfcs/blob/master/text/0640-debug-improvements.md
[conversion]: https://github.com/rust-lang/rfcs/pull/529
[num-traits]: https://github.com/rust-lang/rust/pull/23549
[index-value]: https://github.com/rust-lang/rust/pull/23601
[dropck]: https://github.com/rust-lang/rfcs/pull/769
[fundamental]: https://github.com/rust-lang/rfcs/pull/1023
[ci-compare]: https://gist.github.com/brson/a30a77836fbec057cbee
[fn-inherit]: https://github.com/rust-lang/rust/pull/23282
[fn-blanket]: https://github.com/rust-lang/rust/pull/23895
Expand Down Expand Up @@ -368,7 +379,6 @@ Version 1.0.0-alpha.2 (February 2015)
[osstr]: https://github.com/rust-lang/rust/pull/21488
[osstr-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0517-io-os-reform.md
[Self]: https://github.com/rust-lang/rust/pull/22158
[ufcs]: https://github.com/rust-lang/rust/pull/21077
[ufcs-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0132-ufcs.md
[un]: https://github.com/rust-lang/rust/pull/22256

Expand Down
64 changes: 51 additions & 13 deletions configure
Original file line number Diff line number Diff line change
Expand Up @@ -405,6 +405,10 @@ case $CFG_OSTYPE in
CFG_OSTYPE=unknown-openbsd
;;

NetBSD)
CFG_OSTYPE=unknown-netbsd
;;

Darwin)
CFG_OSTYPE=apple-darwin
;;
Expand Down Expand Up @@ -1114,7 +1118,7 @@ do
fi
;;

x86_64-*-msvc)
*-msvc)
# Currently the build system is not configured to build jemalloc
# with MSVC, so we omit this optional dependency.
step_msg "targeting MSVC, disabling jemalloc"
Expand Down Expand Up @@ -1154,22 +1158,45 @@ do
CFG_MSVC_ROOT=$(echo "$install" | grep InstallDir | sed 's/.*REG_SZ[ ]*//')
CFG_MSVC_ROOT=$(dirname "$CFG_MSVC_ROOT")
CFG_MSVC_ROOT=$(dirname "$CFG_MSVC_ROOT")
CFG_MSVC_CL="${CFG_MSVC_ROOT}/VC/bin/amd64/cl.exe"
CFG_MSVC_LIB="${CFG_MSVC_ROOT}/VC/bin/amd64/lib.exe"
CFG_MSVC_LINK="${CFG_MSVC_ROOT}/VC/bin/amd64/link.exe"
putvar CFG_MSVC_ROOT

case $i in
x86_64-*)
bits=x86_64
msvc_part=amd64
;;
i686-*)
bits=i386
msvc_part=
;;
*)
err "can only target x86 targets for MSVC"
;;
esac
bindir="${CFG_MSVC_ROOT}/VC/bin"
if [ ! -z "$msvc_part" ]; then
bindir="$bindir/$msvc_part"
fi
eval CFG_MSVC_BINDIR_$bits="\"$bindir\""
eval CFG_MSVC_CL_$bits="\"$bindir/cl.exe\""
eval CFG_MSVC_LIB_$bits="\"$bindir/lib.exe\""
eval CFG_MSVC_LINK_$bits="\"$bindir/link.exe\""

vcvarsall="${CFG_MSVC_ROOT}/VC/vcvarsall.bat"
CFG_MSVC_INCLUDE_PATH=$(cmd /c "\"$vcvarsall\" amd64 && cmd /c echo %INCLUDE%")
include_path=$(cmd /c "\"$vcvarsall\" $msvc_part && cmd /c echo %INCLUDE%")
need_ok "failed to learn about MSVC's INCLUDE"
CFG_MSVC_LIB_PATH=$(cmd /c "\"$vcvarsall\" amd64 && cmd /c echo %LIB%")
lib_path=$(cmd /c "\"$vcvarsall\" $msvc_part && cmd /c echo %LIB%")
need_ok "failed to learn about MSVC's LIB"

putvar CFG_MSVC_ROOT
putvar CFG_MSVC_CL
putvar CFG_MSVC_LIB
putvar CFG_MSVC_LINK
putvar CFG_MSVC_INCLUDE_PATH
putvar CFG_MSVC_LIB_PATH
eval CFG_MSVC_INCLUDE_PATH_${bits}="\"$include_path\""
eval CFG_MSVC_LIB_PATH_${bits}="\"$lib_path\""

putvar CFG_MSVC_BINDIR_${bits}
putvar CFG_MSVC_CL_${bits}
putvar CFG_MSVC_LIB_${bits}
putvar CFG_MSVC_LINK_${bits}
putvar CFG_MSVC_INCLUDE_PATH_${bits}
putvar CFG_MSVC_LIB_PATH_${bits}
;;

*)
Expand Down Expand Up @@ -1408,8 +1435,19 @@ do

msg "configuring LLVM with:"
msg "$CMAKE_ARGS"
case "$t" in
x86_64-*)
generator="Visual Studio 12 2013 Win64"
;;
i686-*)
generator="Visual Studio 12 2013"
;;
*)
err "can only build LLVM for x86 platforms"
;;
esac
(cd $LLVM_BUILD_DIR && "$CFG_CMAKE" $CFG_LLVM_SRC_DIR \
-G "Visual Studio 12 2013 Win64" \
-G "$generator" \
$CMAKE_ARGS)
need_ok "LLVM cmake configure failed"
fi
Expand Down
29 changes: 29 additions & 0 deletions mk/cfg/i686-pc-windows-msvc.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# i686-pc-windows-msvc configuration
CC_i686-pc-windows-msvc="$(CFG_MSVC_CL_i386)" -nologo
LINK_i686-pc-windows-msvc="$(CFG_MSVC_LINK_i386)" -nologo
CXX_i686-pc-windows-msvc="$(CFG_MSVC_CL_i386)" -nologo
CPP_i686-pc-windows-msvc="$(CFG_MSVC_CL_i386)" -nologo
AR_i686-pc-windows-msvc="$(CFG_MSVC_LIB_i386)" -nologo
CFG_LIB_NAME_i686-pc-windows-msvc=$(1).dll
CFG_STATIC_LIB_NAME_i686-pc-windows-msvc=$(1).lib
CFG_LIB_GLOB_i686-pc-windows-msvc=$(1)-*.{dll,lib}
CFG_LIB_DSYM_GLOB_i686-pc-windows-msvc=$(1)-*.dylib.dSYM
CFG_JEMALLOC_CFLAGS_i686-pc-windows-msvc :=
CFG_GCCISH_CFLAGS_i686-pc-windows-msvc := -MD
CFG_GCCISH_CXXFLAGS_i686-pc-windows-msvc := -MD
CFG_GCCISH_LINK_FLAGS_i686-pc-windows-msvc :=
CFG_GCCISH_DEF_FLAG_i686-pc-windows-msvc :=
CFG_LLC_FLAGS_i686-pc-windows-msvc :=
CFG_INSTALL_NAME_i686-pc-windows-msvc =
CFG_EXE_SUFFIX_i686-pc-windows-msvc := .exe
CFG_WINDOWSY_i686-pc-windows-msvc := 1
CFG_UNIXY_i686-pc-windows-msvc :=
CFG_LDPATH_i686-pc-windows-msvc :=
CFG_RUN_i686-pc-windows-msvc=$(2)
CFG_RUN_TARG_i686-pc-windows-msvc=$(call CFG_RUN_i686-pc-windows-msvc,,$(2))
CFG_GNU_TRIPLE_i686-pc-windows-msvc := i686-pc-win32

# All windows nightiles are currently a GNU triple, so this MSVC triple is not
# bootstrapping from itself. This is relevant during stage0, and other parts of
# the build system take this into account.
BOOTSTRAP_FROM_i686-pc-windows-msvc := i686-pc-windows-gnu
68 changes: 5 additions & 63 deletions mk/cfg/x86_64-pc-windows-msvc.mk
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# x86_64-pc-windows-msvc configuration
CC_x86_64-pc-windows-msvc="$(CFG_MSVC_CL)" -nologo
LINK_x86_64-pc-windows-msvc="$(CFG_MSVC_LINK)" -nologo
CXX_x86_64-pc-windows-msvc="$(CFG_MSVC_CL)" -nologo
CPP_x86_64-pc-windows-msvc="$(CFG_MSVC_CL)" -nologo
AR_x86_64-pc-windows-msvc="$(CFG_MSVC_LIB)" -nologo
CC_x86_64-pc-windows-msvc="$(CFG_MSVC_CL_x86_64)" -nologo
LINK_x86_64-pc-windows-msvc="$(CFG_MSVC_LINK_x86_64)" -nologo
CXX_x86_64-pc-windows-msvc="$(CFG_MSVC_CL_x86_64)" -nologo
CPP_x86_64-pc-windows-msvc="$(CFG_MSVC_CL_x86_64)" -nologo
AR_x86_64-pc-windows-msvc="$(CFG_MSVC_LIB_x86_64)" -nologo
CFG_LIB_NAME_x86_64-pc-windows-msvc=$(1).dll
CFG_STATIC_LIB_NAME_x86_64-pc-windows-msvc=$(1).lib
CFG_LIB_GLOB_x86_64-pc-windows-msvc=$(1)-*.{dll,lib}
Expand All @@ -23,64 +23,6 @@ CFG_RUN_x86_64-pc-windows-msvc=$(2)
CFG_RUN_TARG_x86_64-pc-windows-msvc=$(call CFG_RUN_x86_64-pc-windows-msvc,,$(2))
CFG_GNU_TRIPLE_x86_64-pc-windows-msvc := x86_64-pc-win32

# These two environment variables are scraped by the `./configure` script and
# are necessary for `cl.exe` to find standard headers (the INCLUDE variable) and
# for `link.exe` to find standard libraries (the LIB variable).
ifdef CFG_MSVC_INCLUDE_PATH
export INCLUDE := $(CFG_MSVC_INCLUDE_PATH)
endif
ifdef CFG_MSVC_LIB_PATH
export LIB := $(CFG_MSVC_LIB_PATH)
endif

# Unfortunately `link.exe` is also a program in `/usr/bin` on MinGW installs,
# but it's not the one that we want. As a result we make sure that our detected
# `link.exe` shows up in PATH first.
ifdef CFG_MSVC_LINK
export PATH := $(CFG_MSVC_ROOT)/VC/bin/amd64:$(PATH)
endif

# There are more comments about this available in the target specification for
# Windows MSVC in the compiler, but the gist of it is that we use `llvm-ar.exe`
# instead of `lib.exe` for assembling archives, so we need to inject this custom
# dependency here.
NATIVE_TOOL_DEPS_core_T_x86_64-pc-windows-msvc += llvm-ar.exe
INSTALLED_BINS_x86_64-pc-windows-msvc += llvm-ar.exe

# When working with MSVC on windows, each DLL needs to explicitly declare its
# interface to the outside world through some means. The options for doing so
# include:
#
# 1. A custom attribute on each function itself
# 2. A linker argument saying what to export
# 3. A file which lists all symbols that need to be exported
#
# The Rust compiler takes care (1) for us for all Rust code by annotating all
# public-facing functions with dllexport, but we have a few native dependencies
# which need to cross the DLL boundary. The most important of these dependencies
# is LLVM which is linked into `rustc_llvm.dll` but primarily used from
# `rustc_trans.dll`. This means that many of LLVM's C API functions need to be
# exposed from `rustc_llvm.dll` to be forwarded over the boundary.
#
# Unfortunately, at this time, LLVM does not handle this sort of exportation on
# Windows for us, so we're forced to do it ourselves if we want it (which seems
# like the path of least resistance right now). To do this we generate a `.DEF`
# file [1] which we then custom-pass to the linker when building the rustc_llvm
# crate. This DEF file list all symbols that are exported from
# `src/librustc_llvm/lib.rs` and is generated by a small python script.
#
# Fun times!
#
# [1]: https://msdn.microsoft.com/en-us/library/28d6s79h.aspx
RUSTFLAGS_rustc_llvm_T_x86_64-pc-windows-msvc += \
-C link-args="-DEF:x86_64-pc-windows-msvc/rt/rustc_llvm.def"
CUSTOM_DEPS_rustc_llvm_T_x86_64-pc-windows-msvc += \
x86_64-pc-windows-msvc/rt/rustc_llvm.def

x86_64-pc-windows-msvc/rt/rustc_llvm.def: $(S)src/etc/mklldef.py \
$(S)src/librustc_llvm/lib.rs
$(CFG_PYTHON) $^ $@ rustc_llvm-$(CFG_FILENAME_EXTRA)

# All windows nightiles are currently a GNU triple, so this MSVC triple is not
# bootstrapping from itself. This is relevant during stage0, and other parts of
# the build system take this into account.
Expand Down
22 changes: 22 additions & 0 deletions mk/cfg/x86_64-unknown-netbsd.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# x86_64-unknown-netbsd configuration
CC_x86_64-unknown-netbsd=$(CC)
CXX_x86_64-unknown-netbsd=$(CXX)
CPP_x86_64-unknown-netbsd=$(CPP)
AR_x86_64-unknown-netbsd=$(AR)
CFG_LIB_NAME_x86_64-unknown-netbsd=lib$(1).so
CFG_STATIC_LIB_NAME_x86_64-unknown-netbsd=lib$(1).a
CFG_LIB_GLOB_x86_64-unknown-netbsd=lib$(1)-*.so
CFG_LIB_DSYM_GLOB_x86_64-unknown-netbsd=$(1)-*.dylib.dSYM
CFG_JEMALLOC_CFLAGS_x86_64-unknown-netbsd := -I/usr/local/include $(CFLAGS)
CFG_GCCISH_CFLAGS_x86_64-unknown-netbsd := -Wall -Werror -g -fPIC -I/usr/local/include $(CFLAGS)
CFG_GCCISH_LINK_FLAGS_x86_64-unknown-netbsd := -shared -fPIC -g -pthread -lrt
CFG_GCCISH_DEF_FLAG_x86_64-unknown-netbsd := -Wl,--export-dynamic,--dynamic-list=
CFG_LLC_FLAGS_x86_64-unknown-netbsd :=
CFG_INSTALL_NAME_x86_64-unknown-netbsd =
CFG_EXE_SUFFIX_x86_64-unknown-netbsd :=
CFG_WINDOWSY_x86_64-unknown-netbsd :=
CFG_UNIXY_x86_64-unknown-netbsd := 1
CFG_LDPATH_x86_64-unknown-netbsd :=
CFG_RUN_x86_64-unknown-netbsd=$(2)
CFG_RUN_TARG_x86_64-unknown-netbsd=$(call CFG_RUN_x86_64-unknown-netbsd,,$(2))
CFG_GNU_TRIPLE_x86_64-unknown-netbsd := x86_64-unknown-netbsd
Loading