diff --git a/lib/modules/ADT.pmod/Table.pmod b/lib/modules/ADT.pmod/Table.pmod index a3322511cc5e395ef37be272b94ac07cc0e06404..e1f775a39bc21a2c91c295754943aea4f97deba5 100644 --- a/lib/modules/ADT.pmod/Table.pmod +++ b/lib/modules/ADT.pmod/Table.pmod @@ -86,7 +86,9 @@ class table { int `==(object t) { - return equal(fields, indices(t)) && equal(table, values(t)); + return (equal(Array.map(fields, lower_case), + Array.map(indices(t), lower_case)) && + equal(table, values(t))); } object append_bottom(object t) @@ -193,7 +195,7 @@ class table { { if(!sizeof(cs)) return sum(); - array f = Array.map(fields, lower_case) - Array.map(cs, lower_case); + array f = remap(fields) - remap(cs); mapping m = mkmapping(f, Array.map(f, lambda() { return lambda(mixed x1, mixed x2)