From 4a6af11c342e07c283dd5761add0f40e28a75769 Mon Sep 17 00:00:00 2001
From: Steve Klabnik <steve@steveklabnik.com>
Date: Tue, 13 Jan 2015 09:38:07 -0500
Subject: [PATCH] Document remaining attributes and macros

Fixes #6444
---
 src/doc/reference.md | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/src/doc/reference.md b/src/doc/reference.md
index d3af4ab1c7467..be5efaae92804 100644
--- a/src/doc/reference.md
+++ b/src/doc/reference.md
@@ -739,6 +739,15 @@ Rust syntax is restricted in two ways:
 * `concat!` : concatenates a comma-separated list of literals
 * `concat_idents!` : create a new identifier by concatenating the arguments
 
+The following attributes are used for quasiquoting in procedural macros:
+
+* `quote_expr!`
+* `quote_item!`
+* `quote_pat!`
+* `quote_stmt!`
+* `quote_tokens!`
+* `quote_ty!`
+
 # Crates and source files
 
 Rust is a *compiled* language. Its semantics obey a *phase distinction*
@@ -2041,6 +2050,9 @@ type int8_t = i8;
   item](#language-items) for more details.
 - `test` - indicates that this function is a test function, to only be compiled
   in case of `--test`.
+- `should_fail` - indicates that this test function should panic, inverting the success condition.
+- `cold` - The function is unlikely to be executed, so optimize it (and calls
+  to it) differently.
 
 ### Static-only attributes