// language object (Object) it denotes.
// Use Info.{Defs,Uses,Implicits} for the results of name resolution.
//
-// Constant folding computes the exact constant value (exact.Value) for
-// every expression (ast.Expr) that is a compile-time constant.
+// Constant folding computes the exact constant value (constant.Value)
+// for every expression (ast.Expr) that is a compile-time constant.
// Use Info.Types[expr].Value for the results of constant folding.
//
// Type inference computes the type (Type) of every expression (ast.Expr)
type TypeAndValue struct {
mode operandMode
Type Type
- Value exact.Value
+ Value exact.Value // == constant.Value
}
// TODO(gri) Consider eliminating the IsVoid predicate. Instead, report