diff --git a/compiler/cpp/src/thriftl.ll b/compiler/cpp/src/thriftl.ll
index 60a7f2c..9392734 100644
--- a/compiler/cpp/src/thriftl.ll
+++ b/compiler/cpp/src/thriftl.ll
@@ -106,7 +106,7 @@
 "map"                { return tok_map;                  }
 "list"               { return tok_list;                 }
 "set"                { return tok_set;                  }
-"async"              { return tok_oneway;               }
+"oneway"             { return tok_oneway;               }
 "typedef"            { return tok_typedef;              }
 "struct"             { return tok_struct;               }
 "exception"          { return tok_xception;             }
@@ -117,6 +117,10 @@
 "const"              { return tok_const;                }
 "required"           { return tok_required;             }
 "optional"           { return tok_optional;             }
+"async" {
+  pwarning(0, "\"async\" is deprecated.  It is called \"oneway\" now.\n");
+  return tok_oneway;
+}
 
 
 "abstract"           { thrift_reserved_keyword(yytext); }
diff --git a/contrib/fb303/if/fb303.thrift b/contrib/fb303/if/fb303.thrift
index fb9e220..799d5f8 100644
--- a/contrib/fb303/if/fb303.thrift
+++ b/contrib/fb303/if/fb303.thrift
@@ -95,11 +95,11 @@
   /**
    * Tell the server to reload its configuration, reopen log files, etc
    */
-  async void reinitialize(),
+  oneway void reinitialize(),
 
   /**
    * Suggest a shutdown to the server
    */
-  async void shutdown(),
+  oneway void shutdown(),
 
 }
diff --git a/contrib/thrift.el b/contrib/thrift.el
index fdee7e2..7d1c751 100644
--- a/contrib/thrift.el
+++ b/contrib/thrift.el
@@ -10,7 +10,7 @@
 (defconst thrift-font-lock-keywords
   (list
    '("#.*$" . font-lock-comment-face)  ;; perl style comments
-   '("\\<\\(include\\|struct\\|exception\\|typedef\\|const\\|enum\\|service\\|extends\\|void\\|async\\|throws\\|optional\\|required\\)\\>" . font-lock-keyword-face)  ;; keywords
+   '("\\<\\(include\\|struct\\|exception\\|typedef\\|const\\|enum\\|service\\|extends\\|void\\|oneway\\|throws\\|optional\\|required\\)\\>" . font-lock-keyword-face)  ;; keywords
    '("\\<\\(bool\\|byte\\|i16\\|i32\\|i64\\|double\\|string\\|binary\\|map\\|list\\|set\\)\\>" . font-lock-type-face)  ;; built-in types
    '("\\<\\([0-9]+\\)\\>" . font-lock-variable-name-face)   ;; ordinals
    '("\\<\\(\\w+\\)\\s-*(" (1 font-lock-function-name-face))  ;; functions
diff --git a/contrib/thrift.vim b/contrib/thrift.vim
index e8580c7..dd87eb3 100644
--- a/contrib/thrift.vim
+++ b/contrib/thrift.vim
@@ -40,7 +40,7 @@
 syn match thriftSpecial "\d\+:"
 
 " Structure
-syn keyword thriftStructure service async extends
+syn keyword thriftStructure service oneway extends
 "async"         { return tok_async;         }
 "exception"     { return tok_xception;      }
 "extends"       { return tok_extends;       }
diff --git a/lib/rb/spec/ThriftSpec.thrift b/lib/rb/spec/ThriftSpec.thrift
index 51758a3..045e5f5 100644
--- a/lib/rb/spec/ThriftSpec.thrift
+++ b/lib/rb/spec/ThriftSpec.thrift
@@ -40,7 +40,7 @@
 service NonblockingService {
   Hello greeting(1:bool english)
   bool block()
-  async void unblock(1:i32 n)
-  async void shutdown()
+  oneway void unblock(1:i32 n)
+  oneway void shutdown()
   void sleep(1:double seconds)
 }
diff --git a/test/ThriftTest.thrift b/test/ThriftTest.thrift
index fe3eba1..7049d51 100644
--- a/test/ThriftTest.thrift
+++ b/test/ThriftTest.thrift
@@ -103,7 +103,7 @@
   Xtruct testMultiException(string arg0, string arg1) throws(Xception err1, Xception2 err2)
 
   /* Test oneway void */
-  async void testOneway(1:i32 secondsToSleep)
+  oneway void testOneway(1:i32 secondsToSleep)
 }
 
 service SecondService
diff --git a/tutorial/tutorial.thrift b/tutorial/tutorial.thrift
index 52e1b75..b87988a 100644
--- a/tutorial/tutorial.thrift
+++ b/tutorial/tutorial.thrift
@@ -121,7 +121,7 @@
     * a request and does not listen for any response at all. Oneway methods
     * must be void.
     */
-   async void zip()
+   oneway void zip()
 
 }
 
