On Fri, Jun 3, 2016 at 7:02 PM, Mark Logan <m...@artillery.com> wrote: > I'm migrating some code to v8 5.0.71 (node v6.1.0), and replacing deprecated > calls to ForceSet with DefineOwnProperty/CreateDataProperty. > > I'm a little confused as to why V8_WARN_UNUSED_RESULT is present in these > declarations, when it wasn't present for ForceSet. Is there some new reason > why I should not ignore the return value? Or, is ignoring the return value > from DefineOwnProperty (or CreateDataProperty) no more dangerous than it was > to ignore the return value from ForceSet? > > Thanks, > Mark
I believe V8_WARN_UNUSED_RESULT didn't exist when ForceSet() was added. Ignoring the return value is probably no more dangerous, but: 1. DefineOwnProperty() fails when you try to set a property with a setter that throws an exception. 2. CreateDataProperty() and DefineOwnProperty() fail when the target object is not configurable, not extensible, frozen or sealed. IOW, there are quite a few failure modes. You almost always want to check whether the operation succeeded and did what you thought it did. -- -- v8-users mailing list v8-users@googlegroups.com http://groups.google.com/group/v8-users --- You received this message because you are subscribed to the Google Groups "v8-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to v8-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.