Index: src/CodeGen/OperatorTable.cc
===================================================================
--- src/CodeGen/OperatorTable.cc	(revision 478b1d0d00fcef21da956b0b71fcee9f5c7968e4)
+++ src/CodeGen/OperatorTable.cc	(revision e5f2a6763f1497c623f53576a6d9062fc76189d1)
@@ -10,6 +10,6 @@
 // Created On       : Mon May 18 07:44:20 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Dec 13 14:33:05 2016
-// Update Count     : 10
+// Last Modified On : Sat Jul 15 17:12:22 2017
+// Update Count     : 15
 //
 
@@ -35,4 +35,5 @@
 			{	"++?",		"++",	"_operator_preincr",			OT_PREFIXASSIGN		},
 			{	"--?",		"--",	"_operator_predecr",			OT_PREFIXASSIGN		},
+			{	"?\\?",		"\\",	"_operator_exponential",		OT_INFIX			},
 			{	"?*?",		"*",	"_operator_multiply",			OT_INFIX			},
 			{	"?/?",		"/",	"_operator_divide",				OT_INFIX			},
@@ -52,4 +53,5 @@
 			{	"?|?",		"|",	"_operator_bitor",				OT_INFIX			},
 			{	"?=?",		"=",	"_operator_assign",				OT_INFIXASSIGN		},
+			{	"?\\=?",	"\\=",	"_operator_expassign",			OT_INFIXASSIGN		},
 			{	"?*=?",		"*=",	"_operator_multassign",			OT_INFIXASSIGN		},
 			{	"?/=?",		"/=",	"_operator_divassign",			OT_INFIXASSIGN		},
Index: src/Parser/ExpressionNode.cc
===================================================================
--- src/Parser/ExpressionNode.cc	(revision 478b1d0d00fcef21da956b0b71fcee9f5c7968e4)
+++ src/Parser/ExpressionNode.cc	(revision e5f2a6763f1497c623f53576a6d9062fc76189d1)
@@ -10,6 +10,6 @@
 // Created On       : Sat May 16 13:17:07 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Wed Jun 28 21:08:15 2017
-// Update Count     : 542
+// Last Modified On : Sat Jul 15 16:09:04 2017
+// Update Count     : 549
 //
 
@@ -231,9 +231,10 @@
 }
 
+// Must harmonize with OperKinds.
 static const char *OperName[] = {
 	// diadic
-	"SizeOf", "AlignOf", "OffsetOf", "?+?", "?-?", "?*?", "?/?", "?%?", "||", "&&",
+	"SizeOf", "AlignOf", "OffsetOf", "?+?", "?-?", "?\\?", "?*?", "?/?", "?%?", "||", "&&",
 	"?|?", "?&?", "?^?", "Cast", "?<<?", "?>>?", "?<?", "?>?", "?<=?", "?>=?", "?==?", "?!=?",
-	"?=?", "?@=?", "?*=?", "?/=?", "?%=?", "?+=?", "?-=?", "?<<=?", "?>>=?", "?&=?", "?^=?", "?|=?",
+	"?=?", "?@=?", "?\\=?", "?*=?", "?/=?", "?%=?", "?+=?", "?-=?", "?<<=?", "?>>=?", "?&=?", "?^=?", "?|=?",
 	"?[?]", "...",
 	// monadic
Index: src/Parser/ParseNode.h
===================================================================
--- src/Parser/ParseNode.h	(revision 478b1d0d00fcef21da956b0b71fcee9f5c7968e4)
+++ src/Parser/ParseNode.h	(revision e5f2a6763f1497c623f53576a6d9062fc76189d1)
@@ -9,7 +9,7 @@
 // Author           : Rodolfo G. Esteves
 // Created On       : Sat May 16 13:28:16 2015
-// Last Modified By : Andrew Beach
-// Last Modified On : Fri Jul 14 16:56:00 2017
-// Update Count     : 780
+// Last Modified By : Peter A. Buhr
+// Last Modified On : Sat Jul 15 16:00:48 2017
+// Update Count     : 785
 //
 
@@ -141,9 +141,10 @@
 };
 
+// Must harmonize with OperName.
 enum class OperKinds {
 	// diadic
-	SizeOf, AlignOf, OffsetOf, Plus, Minus, Mul, Div, Mod, Or, And,
+	SizeOf, AlignOf, OffsetOf, Plus, Minus, Exp, Mul, Div, Mod, Or, And,
 	BitOr, BitAnd, Xor, Cast, LShift, RShift, LThan, GThan, LEThan, GEThan, Eq, Neq,
-	Assign, AtAssn, MulAssn, DivAssn, ModAssn, PlusAssn, MinusAssn, LSAssn, RSAssn, AndAssn, ERAssn, OrAssn,
+	Assign, AtAssn, ExpAssn, MulAssn, DivAssn, ModAssn, PlusAssn, MinusAssn, LSAssn, RSAssn, AndAssn, ERAssn, OrAssn,
 	Index, Range,
 	// monadic
Index: src/Parser/lex.ll
===================================================================
--- src/Parser/lex.ll	(revision 478b1d0d00fcef21da956b0b71fcee9f5c7968e4)
+++ src/Parser/lex.ll	(revision e5f2a6763f1497c623f53576a6d9062fc76189d1)
@@ -10,6 +10,6 @@
  * Created On       : Sat Sep 22 08:58:10 2001
  * Last Modified By : Peter A. Buhr
- * Last Modified On : Sat Jul 15 08:31:47 2017
- * Update Count     : 541
+ * Last Modified On : Sat Jul 15 15:46:34 2017
+ * Update Count     : 542
  */
 
@@ -337,7 +337,7 @@
 "-"				{ ASCIIOP_RETURN(); }
 "*"				{ ASCIIOP_RETURN(); }
+"\\"			{ ASCIIOP_RETURN(); }					// CFA, exponentiation
 "/"				{ ASCIIOP_RETURN(); }
 "%"				{ ASCIIOP_RETURN(); }
-"\\"			{ ASCIIOP_RETURN(); }					// CFA, exponentiation
 "^"				{ ASCIIOP_RETURN(); }
 "~"				{ ASCIIOP_RETURN(); }
@@ -362,8 +362,8 @@
 "+="			{ NAMEDOP_RETURN(PLUSassign); }
 "-="			{ NAMEDOP_RETURN(MINUSassign); }
+"\\="			{ NAMEDOP_RETURN(EXPassign); }			// CFA, exponentiation
 "*="			{ NAMEDOP_RETURN(MULTassign); }
 "/="			{ NAMEDOP_RETURN(DIVassign); }
 "%="			{ NAMEDOP_RETURN(MODassign); }
-"\\="			{ NAMEDOP_RETURN(MODassign); }			// CFA, exponentiation
 "&="			{ NAMEDOP_RETURN(ANDassign); }
 "|="			{ NAMEDOP_RETURN(ORassign); }
Index: src/Parser/parser.yy
===================================================================
--- src/Parser/parser.yy	(revision 478b1d0d00fcef21da956b0b71fcee9f5c7968e4)
+++ src/Parser/parser.yy	(revision e5f2a6763f1497c623f53576a6d9062fc76189d1)
@@ -10,6 +10,6 @@
 // Created On       : Sat Sep  1 20:22:55 2001
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sat Jul 15 09:46:26 2017
-// Update Count     : 2451
+// Last Modified On : Sat Jul 15 15:59:50 2017
+// Update Count     : 2454
 //
 
@@ -151,5 +151,5 @@
 %token ELLIPSIS											// ...
 
-%token MULTassign	DIVassign	MODassign				// *=	/=	%=/
+%token EXPassign	MULTassign	DIVassign	MODassign	// \=	*=	/=	%=
 %token PLUSassign	MINUSassign							// +=	-=
 %token LSassign		RSassign							// <<=	>>=
@@ -577,5 +577,5 @@
 	cast_expression
 	| exponential_expression '\\' cast_expression
-		{ $$ = new ExpressionNode( build_binary_val( OperKinds::Mod, $1, $3 ) ); }
+		{ $$ = new ExpressionNode( build_binary_val( OperKinds::Exp, $1, $3 ) ); }
 	;
 
@@ -685,4 +685,5 @@
 	'='											{ $$ = OperKinds::Assign; }
 	| ATassign									{ $$ = OperKinds::AtAssn; }
+	| EXPassign									{ $$ = OperKinds::ExpAssn; }
 	| MULTassign								{ $$ = OperKinds::MulAssn; }
 	| DIVassign									{ $$ = OperKinds::DivAssn; }
