Index: src/AST/Expr.cpp
===================================================================
--- src/AST/Expr.cpp	(revision 37c3db89dff16d0bf27c54e7fd0fd2c89a7a12cb)
+++ src/AST/Expr.cpp	(revision 5cc53b22b1e522139aa96db86d1c4b05ea44825d)
@@ -122,6 +122,9 @@
 
 bool VariableExpr::get_lvalue() const {
-	// It isn't always an lvalue, but it is never an rvalue.
+	// Special case for enumeration labels (more literals than variables):
 	if(dynamic_cast<const ast::EnumInstType *>(var->get_type())) return !var->isMember;
+	// The remaining uses are either actual variables (lvalues) or function
+	// names which are a special value catagory that can be treated as
+	// lvalues in the places we are worried about.
 	return true;
 }
