Skip to content
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

Rollup of 12 pull requests #82010

Closed
wants to merge 34 commits into from

Commits on Dec 12, 2020

  1. Configuration menu
    Copy the full SHA
    2b9ba46 View commit details
    Browse the repository at this point in the history

Commits on Feb 4, 2021

  1. Increment self.index before calling `Iterator::self.a.__iterator_ge…

    …t_unchecked` in `Zip` `TrustedRandomAccess` specialization
    
    Otherwise if `Iterator::self.a.__iterator_get_unchecked` panics the
    index would not have been incremented yet and another call to
    `Iterator::next` would read from the same index again, which is not
    allowed according to the API contract of `TrustedRandomAccess` for
    `!Clone`.
    
    Fixes rust-lang#81740
    sdroege committed Feb 4, 2021
    Configuration menu
    Copy the full SHA
    86a4b27 View commit details
    Browse the repository at this point in the history

Commits on Feb 7, 2021

  1. use rwlock for accessing ENV

    the8472 committed Feb 7, 2021
    Configuration menu
    Copy the full SHA
    55ca27f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    406fd3a View commit details
    Browse the repository at this point in the history

Commits on Feb 8, 2021

  1. HWASan support

    Tri Vo committed Feb 8, 2021
    Configuration menu
    Copy the full SHA
    c7d9bff View commit details
    Browse the repository at this point in the history
  2. HWASan documentation

    Tri Vo committed Feb 8, 2021
    Configuration menu
    Copy the full SHA
    9c34c14 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2200cf1 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    44abad5 View commit details
    Browse the repository at this point in the history

Commits on Feb 9, 2021

  1. Fix const generics in GAT

    BoxyUwU committed Feb 9, 2021
    Configuration menu
    Copy the full SHA
    1d9ac3c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4fc181d View commit details
    Browse the repository at this point in the history

Commits on Feb 10, 2021

  1. Use ItemCtxt::to_ty

    camsteffen committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    471ed5f View commit details
    Browse the repository at this point in the history
  2. RELEASES.md 1.50: Group platform support notes together

    Move the note about dropping cloudabi next to the other platform support
    changes.
    joshtriplett committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    883988b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d3fea13 View commit details
    Browse the repository at this point in the history
  4. Comments :3

    BoxyUwU committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    2c4337a View commit details
    Browse the repository at this point in the history
  5. Fix comment smol mistakes

    BoxyUwU committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    0422745 View commit details
    Browse the repository at this point in the history
  6. comma...

    BoxyUwU committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    0ffa2da View commit details
    Browse the repository at this point in the history
  7. Fix assosiated typo

    Introduced in d3c4dbd, noticed only
    after the fact, sorry. 😅
    
    Signed-off-by: Daniel Egger <daniel@eggers-club.de>
    therealprof committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    a6d4137 View commit details
    Browse the repository at this point in the history
  8. rewrite the comments

    BoxyUwU committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    7ca96ed View commit details
    Browse the repository at this point in the history
  9. Catch errors on localStorage setting failure

    Fixes rust-lang#81928
    
    “Ask forgiveness not permission”  : this makes the code both simpler and more robust
    lovasoa committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    f13bbea View commit details
    Browse the repository at this point in the history
  10. Fix getCurrentValue

    lovasoa committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    16f0ccd View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    5034b50 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    bfd1ccf View commit details
    Browse the repository at this point in the history

Commits on Feb 11, 2021

  1. Rollup merge of rust-lang#79983 - petar-dambovaliev:master, r=Dylan-DPC

    fix indefinite article in cell.rs
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    02ab235 View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#81506 - vo4:hwasan, r=nagisa

    HWAddressSanitizer support
    
    #  Motivation
    Compared to regular ASan, HWASan has a [smaller overhead](https://source.android.com/devices/tech/debug/hwasan). The difference in practice is that HWASan'ed code is more usable, e.g. Android device compiled with HWASan can be used as a daily driver.
    
    # Example
    ```
    fn main() {
        let xs = vec![0, 1, 2, 3];
        let _y = unsafe { *xs.as_ptr().offset(4) };
    }
    ```
    ```
    ==223==ERROR: HWAddressSanitizer: tag-mismatch on address 0xefdeffff0050 at pc 0xaaaad00b3468
    READ of size 4 at 0xefdeffff0050 tags: e5/00 (ptr/mem) in thread T0
        #0 0xaaaad00b3464  (/root/main+0x53464)
        rust-lang#1 0xaaaad00b39b4  (/root/main+0x539b4)
        rust-lang#2 0xaaaad00b3dd0  (/root/main+0x53dd0)
        rust-lang#3 0xaaaad00b61dc  (/root/main+0x561dc)
        rust-lang#4 0xaaaad00c0574  (/root/main+0x60574)
        rust-lang#5 0xaaaad00b6290  (/root/main+0x56290)
        rust-lang#6 0xaaaad00b6170  (/root/main+0x56170)
        rust-lang#7 0xaaaad00b3578  (/root/main+0x53578)
        rust-lang#8 0xffff81345e70  (/lib64/libc.so.6+0x20e70)
        rust-lang#9 0xaaaad0096310  (/root/main+0x36310)
    
    [0xefdeffff0040,0xefdeffff0060) is a small allocated heap chunk; size: 32 offset: 16
    0xefdeffff0050 is located 0 bytes to the right of 16-byte region [0xefdeffff0040,0xefdeffff0050)
    allocated here:
        #0 0xaaaad009bcdc  (/root/main+0x3bcdc)
        rust-lang#1 0xaaaad00b1eb0  (/root/main+0x51eb0)
        rust-lang#2 0xaaaad00b20d4  (/root/main+0x520d4)
        rust-lang#3 0xaaaad00b2800  (/root/main+0x52800)
        rust-lang#4 0xaaaad00b1cf4  (/root/main+0x51cf4)
        rust-lang#5 0xaaaad00b33d4  (/root/main+0x533d4)
        rust-lang#6 0xaaaad00b39b4  (/root/main+0x539b4)
        rust-lang#7 0xaaaad00b61dc  (/root/main+0x561dc)
        rust-lang#8 0xaaaad00b3578  (/root/main+0x53578)
        rust-lang#9 0xaaaad0096310  (/root/main+0x36310)
    
    Thread: T0 0xeffe00002000 stack: [0xffffc0590000,0xffffc0d90000) sz: 8388608 tls: [0xffff81521020,0xffff815217d0)
    Memory tags around the buggy address (one tag corresponds to 16 bytes):
      0xfefcefffef80: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefcefffef90: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefcefffefa0: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefcefffefb0: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefcefffefc0: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefcefffefd0: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefcefffefe0: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefcefffeff0: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
    =>0xfefceffff000: a2  a2  05  00  e5 [00] 00  00  00  00  00  00  00  00  00  00
      0xfefceffff010: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefceffff020: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefceffff030: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefceffff040: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefceffff050: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefceffff060: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefceffff070: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
      0xfefceffff080: 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
    Tags for short granules around the buggy address (one tag corresponds to 16 bytes):
      0xfefcefffeff0: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
    =>0xfefceffff000: ..  ..  c5  ..  .. [..] ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
      0xfefceffff010: ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..
    See https://clang.llvm.org/docs/HardwareAssistedAddressSanitizerDesign.html#short-granules for a description of short granule tags
    Registers where the failure occurred (pc 0xaaaad00b3468):
        x0  e500efdeffff0050  x1  0000000000000004  x2  0000ffffc0d8f5a0  x3  0200efff00000000
        x4  0000ffffc0d8f4c0  x5  000000000000004f  x6  00000ffffc0d8f36  x7  0000efff00000000
        x8  e500efdeffff0050  x9  0200efff00000000  x10 0000000000000000  x11 0200efff00000000
        x12 0200effe000006b0  x13 0200effe000006b0  x14 0000000000000008  x15 00000000c00000cf
        x16 0000aaaad00a0afc  x17 0000000000000003  x18 0000000000000001  x19 0000ffffc0d8f718
        x20 ba00ffffc0d8f7a0  x21 0000aaaad00962e0  x22 0000000000000000  x23 0000000000000000
        x24 0000000000000000  x25 0000000000000000  x26 0000000000000000  x27 0000000000000000
        x28 0000000000000000  x29 0000ffffc0d8f650  x30 0000aaaad00b3468
    ```
    
    # Comments/Caveats
    * HWASan is only supported on arm64.
    * I'm not sure if I should add a feature gate or piggyback on the existing one for sanitizers.
    * HWASan requires `-C target-feature=+tagged-globals`. That flag should probably be set transparently to the user. Not sure how to go about that.
    
    # TODO
    * Need more tests.
    * Update documentation.
    * Fix symbolization.
    * Integrate with CI
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    9fad47a View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#81741 - sdroege:zip-trusted-random-access-s…

    …pecialization-panic-safety, r=KodrAus
    
    Increment `self.index` before calling `Iterator::self.a.__iterator_ge…
    
    …`t_unchecked` in `Zip` `TrustedRandomAccess` specialization
    
    Otherwise if `Iterator::self.a.__iterator_get_unchecked` panics the
    index would not have been incremented yet and another call to
    `Iterator::next` would read from the same index again, which is not
    allowed according to the API contract of `TrustedRandomAccess` for
    `!Clone`.
    
    Fixes rust-lang#81740
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    94d1441 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#81850 - the8472:env-rwlock, r=m-ou-se

    use RWlock when accessing os::env
    
    Multiple threads modifying the current process environment is fairly uncommon. Optimize for the more common read case.
    
    r? ``@m-ou-se``
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    9947da8 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#81911 - BoxyUwU:constgenericgaticefix, r=ni…

    …komatsakis
    
    GAT/const_generics: Allow with_opt_const_param to return GAT param def_id
    
    Fixes rust-lang#75415
    Fixes rust-lang#79666
    cc `@lcnr`
    
    I've absolutely no idea who to r?  for this...
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    ebe4041 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#81947 - camsteffen:to-ty, r=jyn514

    Relax ItemCtxt::to_ty lifetime
    
    Tiny simplification by relaxing a lifetime.
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    dd73aab View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#81954 - joshtriplett:release-notes-group-pl…

    …atform-notes, r=XAMPPRocky
    
    RELEASES.md 1.50: Group platform support notes together
    
    Move the note about dropping cloudabi next to the other platform support
    changes.
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    3a0fb95 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#81955 - dtolnay:dwp, r=Mark-Simulacrum

    bootstrap: Locate llvm-dwp based on llvm-config bindir
    
    Fixes rust-lang#81949.
    
    Tested by successfully building 1.50.0 pre-release, which is where I originally hit the issue (https://internals.rust-lang.org/t/rust-1-50-0-pre-release-testing/14012/4?u=dtolnay). Tested both with and without prebuilt LLVM. The check for dry_run is necessary in the non-prebuilt case because the llvm-config built by bootstrap won't exist yet.
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    daccdb3 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#81959 - therealprof:fix-typo, r=oli-obk

    Fix assosiated typo
    
    Introduced in d3c4dbd, noticed only
    after the fact, sorry. 😅
    
    Signed-off-by: Daniel Egger <daniel@eggers-club.de>
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    9e4c98d View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#81964 - lovasoa:patch-1, r=GuillaumeGomez

    Fix documentation not showing on localStorage error
    
    Fixes rust-lang#81928
    
    The [documentation for setItem](https://developer.mozilla.org/en-US/docs/Web/API/Storage/setItem) specifies:
    
    > developers should make sure to always catch possible exceptions from setItem()
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    0db0a0a View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#81968 - pietroalbini:fix-doc-install-path, …

    …r=Mark-Simulacrum
    
    bootstrap: fix wrong docs installation path
    
    This PR fixes rust-lang#81967, a regression introduced by rust-lang#80797. The commit has already been backported to stable 1.50.0.
    
    r? ````@Mark-Simulacrum````
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    67cc5e4 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#81975 - Amanieu:seal2, r=m-ou-se

    Seal the CommandExt, OsStrExt and OsStringExt traits
    
    A crater run (rust-lang#81213 (comment)) has shown that this does not break any existing code.
    
    This also unblocks rust-lang#77728.
    
    Based on rust-lang#81213.
    
    r? ``@m-ou-se``
    cc ``@lygstate``
    Dylan-DPC committed Feb 11, 2021
    Configuration menu
    Copy the full SHA
    12c5065 View commit details
    Browse the repository at this point in the history