www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 8818] New: CTFE fails to compare strings correctly

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=8818

           Summary: CTFE fails to compare strings correctly
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Keywords: CTFE
          Severity: regression
          Priority: P2
         Component: DMD
        AssignedTo: nobody puremagic.com
        ReportedBy: r.sagitario gmx.de



PDT ---
Compiling with current version from github:

bool test()
{
    string op1 = "aa";
    string op2 = "b";
    assert("b" >= "aa");
    assert(op2 >= op1);
    return true;
}

pragma(msg,test());

void main()
{
}

produces:

test.d(7): Error: assert(op2 >= op1) failed
test.d(11):        called from here: test()
test()

This does not happen with dmd 2.060. The regression was probably introduced
with this commit:

SHA-1: f3ee71f1f422fd0ee8863109469f4065a8305b5f



Fix bug 8644 - CTFE doesn't support string <,> on array literals

and is caused by ctfeRawCmp in interpret.c changing the semantics of the
comparison, because it compares the length of arrays before looking at the
contents.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 14 2012
next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=8818


Rainer Schuetze <r.sagitario gmx.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |patch



PDT ---
https://github.com/D-Programming-Language/dmd/pull/1190

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 17 2012
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=8818




Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/81dfc8e45c6576c3711c77963da4744dad382cd6
fix issue 8818:  CTFE fails to compare strings correctly

https://github.com/D-Programming-Language/dmd/commit/fb6808ec01e95755aef5e68dbd9d99a5eaefa97b


fix issue 8818:  CTFE fails to compare strings correctly

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 20 2012
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=8818


Walter Bright <bugzilla digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |bugzilla digitalmars.com
            Version|D2                          |D1 & D2
         Resolution|                            |FIXED


-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 20 2012