Index: src/AST/Expr.cpp
===================================================================
--- src/AST/Expr.cpp	(revision 9c651692624cedb4800281149390b3fc0cbd0e64)
+++ 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;
 }
