Skip to content
Contributing to rustc
Contributing to rustc


@NixOS @rust-lang @rust-lang-nursery
Block or Report

Block or report davidtwco

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Add an optional note:
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse


I'm a software engineer from Scotland, with an interest in systems software and open source software. You'll find me as davidtwco around the internet.

Open Source

I'm a member of the Rust compiler team, so my open source contributions comprise mostly of patches to the compiler for the Rust programming language. Throughout my time contributing, I've been a member of the non-lexical lifetimes (NLL), async/await and diagnostics working groups and have been a co-lead of the polymorphisation and meta working groups. My contributions have included the #[non_exhaustive] attribute from RFC 2008; polymorphisation, a code-size/compile-time optimisation for reducing unnecessary monomorphisation; and Split DWARF support.

I've also contributed to other open source projects, such as NixOS - a reproducible Linux distribution - and Zulip - a real-time chat application with threading. You can find an exhaustive list of my open source contributions on GitHub.

Personal Infrastructure

All of my personal infrastructure is maintained declaratively using Nix, which you can find at davidtwco/veritas. Configuration for my desktops, servers, laptops, dotfiles, packages and this website are built reproducibly from the veritas project.


I'm currently working on compilers and programming languages (including Rust!) at Huawei R&D in Edinburgh.

Previously, I've worked within the infrastructure team at Codeplay Software, where I was responsible for the continuous integration infrastructure and led the effort to make the core infrastructure reproducible. In addition, I was a compiler engineer on engineering projects at Codeplay where I worked with LLVM, Clang, SPIR-V and NVPTX.

You can download my curriculum vitae here.


If you'd like to chat, send me a message on Keybase, on Telegram or shoot me an email at (my PGP key is 0x9F53F154, if you need it).


  1. veritas Public

    @davidtwco's personal mono-repo - containing the declarative configuration of servers, desktops and laptops - including dotfiles; a collection of packages; a static site generator and source of "da…

    Nix 66 3

  2. Empowering everyone to build reliable and efficient software.

    Rust 72.3k 9.8k

  3. A home for compiler team planning documents, meeting minutes, and other such things.

    HTML 297 60

  4. zulip/zulip Public

    Zulip server and web app—powerful open source team chat

    Python 16.5k 5.5k

  5. Nix Packages collection

    Nix 10.4k 8.4k

703 contributions in the last year

Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep Mon Wed Fri
Activity overview
Contributed to rust-lang/rust, rust-lang/thorin, davidtwco/veritas and 22 other repositories

Contribution activity

September 2022

Created 2 commits in 2 repositories

Created a pull request in rust-lang/rust that received 5 comments

macros: diagnostic derive on enums

Part of #100717. Includes commits from #101851, ignore those. Extends #[derive(Diagnostic)] to work on enums too where each variant acts like a dis…

+1,203 −987 5 comments
Opened 1 other pull request in 1 repository
rust-lang/team 1 merged
Reviewed 35 pull requests in 3 repositories
rust-lang/rust 25 pull requests
rust-lang/rustc-dev-guide 2 pull requests
rust-lang/triagebot 1 pull request

Seeing something unexpected? Take a look at the GitHub profile guide.