http://d.puremagic.com/issues/show_bug.cgi?id=11073
Summary: Move semantics not respected
Product: D
Version: D2
Platform: x86
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: DMD
AssignedTo: [email protected]
ReportedBy: [email protected]
--- Comment #0 from [email protected] 2013-09-20 05:08:41 PDT ---
DMD version: 2.063.2
Code: http://pastebin.com/sTLhnNdV
Output:
CTor A with 42
CTor A with 23
CTor A with 65
Value call with A::65
DTor A with 65
CTor A with 1337
Value call with A::1337
DTor A with 1337
Ref call with A::42
DTor A with 23
DTor A with 42
Disassembly: http://pastebin.com/5emmwqJc
Compilation flags: -release -O
Issue:
The first two value calls receive their arguments via move semantics, i.e. the
argument is not copied but passed directly to the function.
This behavior is showed in the output (the postblit function is not called) but
the disassembly shows that the struct is actually copied before the function
call.
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------