diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index f5d26c01974a149895157b1fa949ce087295676b..b46530878d43ccbb8ab315243fb23e5230d53533 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2007-03-17  Kazu Hirata  <kazu@codesourcery.com>
+
+	* cp-tree.def, parser.c, pt.c: Fix comment typos.
+
 2007-03-16  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
 
 	* cvt.c (cp_convert_and_check) : Define.
diff --git a/gcc/cp/cp-tree.def b/gcc/cp/cp-tree.def
index 83e1e53cbc75402bad220638a064ec90ae980813..a2a0c03b79a46936079599659c243e12064cafac 100644
--- a/gcc/cp/cp-tree.def
+++ b/gcc/cp/cp-tree.def
@@ -367,7 +367,7 @@ DEFTREECODE (STATIC_ASSERT, "static_assert", tcc_exceptional, 0)
 
    Values is a (template) parameter pack. When tuple<int, float,
    double> is instantiated, the Values parameter pack is instantiated
-   with the argment pack <int, float, double>. ARGUMENT_PACK_ARGS will
+   with the argument pack <int, float, double>. ARGUMENT_PACK_ARGS will
    be a TREE_VEC containing int, float, and double.  */
 DEFTREECODE (TYPE_ARGUMENT_PACK, "type_argument_pack", tcc_type, 0)
 
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index e1230471a625b88cb9c29ebe2f58e1a5774b900d..2cf6f8a71d8388ef246f799fd7553bfe68ba3c9c 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -4343,8 +4343,8 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p, bool cast_p)
 		   allowed in standard C++.  */
 		if (pedantic)
 		  pedwarn ("ISO C++ forbids compound-literals");
-		/* For simplicitly, we disallow compound literals in
-		   constant-expressions for simpliicitly.  We could
+		/* For simplicity, we disallow compound literals in
+		   constant-expressions.  We could
 		   allow compound literals of integer type, whose
 		   initializer was a constant, in constant
 		   expressions.  Permitting that usage, as a further
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 2546ab4b07c6cc912af509edc7af6ed0de96baf7..575057fd3ef57ced5bfdaba8266fbd4eeb470ec8 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -7677,7 +7677,7 @@ tsubst_decl (tree t, tree args, tsubst_flags_t complain)
             /* If there is a local specialization that isn't a
                parameter pack, it means that we're doing a "simple"
                substitution from inside tsubst_pack_expansion. Just
-               return the local specialiation (which will be a single
+               return the local specialization (which will be a single
                parm).  */
             tree spec = NULL_TREE;
             if (local_specializations)