www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 4796] New: std.array.appender changes broke dmd unit test runnable/untag.d

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

           Summary: std.array.appender changes broke dmd unit test
                    runnable/untag.d
           Product: D
           Version: D2
          Platform: Other
        OS/Version: Windows
            Status: NEW
          Severity: regression
          Priority: P2
         Component: Phobos
        AssignedTo: nobody puremagic.com
        ReportedBy: braddr puremagic.com



---
To reproduce, from the dmd test dir:

make test_results/runnable/untag.d.out

The errors:
runnable/untag.d(105): Error: template std.array.appender(A : E[],E) does not
match any function template declaration
runnable/untag.d(105): Error: template std.array.appender(A : E[],E) cannot
deduce template function from argument types !()(string*)

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Sep 03 2010
next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=4796


Don <clugdbug yahoo.com.au> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |clugdbug yahoo.com.au



It's because appender() no longer takes a pointer.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Sep 03 2010
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=4796


Steven Schveighoffer <schveiguy yahoo.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |schveiguy yahoo.com
          Component|Phobos                      |DMD



08:13:42 PDT ---
Don is correct, I changed the interface of appender to be safer (not use
pointers to most likely stack variables).  Changing bug component to dmd, since
this is a dmd test issue, not a phobos issue.

Here is a patch.  I tried to test it but I get the ominous "no object.d error" 
I have no patience to try and understand what your test harnesses are doing, so
I'll let you figure out if this works or not:

Index: runnable/untag.d
===================================================================
--- runnable/untag.d    (revision 657)
+++ runnable/untag.d    (working copy)
   -101,9 +101,9   
                         "Could not find closing tag: "~txt);
             }
         } else {
-            string code;
-            findConsume(txt, ';', appender(&code));
-            switch (code) {
+            auto app = appender!string();
+            findConsume(txt, ';', app);
+            switch (app.data) {

                 writeChar(' ');
                 break;
   -120,7 +120,7   
                 writeChar('"');
                 break;
             default:
-                throw new Exception(text("Unknown code: &", code));
+                throw new Exception(text("Unknown code: &", app.data));
                 break;
             }
         }

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Sep 03 2010
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=4796


Don <clugdbug yahoo.com.au> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|DMD                         |dstress
         AssignedTo|nobody puremagic.com        |thomas-dloop kuehne.cn




 Changing bug component to dmd, since this is a dmd test issue, not a phobos
issue.
It's not a dmd bug. Might as well use the dstress component for this! (Can we rename that tag?) -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Sep 03 2010
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=4796


Brad Roberts <braddr puremagic.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED



---
Fix committed in dmd r658.

Quibbling about which component it should be assigned to is really petty. 
Change in phobos caused the dmd test suite to fail.  That's what was important.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Sep 03 2010