I have a class member function from which I'm trying to return a sorted array of key, value tuples stored in an associative array as a private member. The member function should be able to be marked const to prevent the AA from being modified. I have reduced the problem to the simple case below which won't compile with DMD v2.072.2.

import std.array;
import std.algorithm;

class A
{
        this() { aa = ["a":1, "b" : 2, "c" : 3]; }
auto pairs() @property const { return aa.byPair.array.sort().release; }
private:
        int[string] aa;
}

If I remove const from the pairs function it compiles fine. I'm just not sure this is a behavior I want. Any help/recommendation would be appreciated.

Reply via email to