Thanks Jakob and Benedikt! Will do. On Monday, September 30, 2024 at 7:44:40 AM UTC-4 Jakob Kummerow wrote:
> Benedikt says off-list that he doesn't have an opinion: moving the empty > implementations into v8-inspector.h is fine. > > Feel free to upload a patch. > > > On Mon, Sep 30, 2024 at 10:42 AM Jakob Kummerow <jkum...@chromium.org> > wrote: > >> +Benedikt Meurer who made these changes and might have an opinion. >> >> >> On Sun, Sep 29, 2024 at 12:55 PM alex...@gmail.com <alex...@gmail.com> >> wrote: >> >>> FWIW, I rebuilt V8 after I made the above change to v8-inspector.h and >>> discovered that, in fact, there are default implementations of consoleTime >>> and friends in v8-inspector-impl.cc which, of course, doesn't play nicely >>> with my change to v8-inspector.h but does suggest that there was an intent >>> to have a default implementation for these functions. So just wondering if >>> these can be moved to v8-inspector.h as that tells the compiler not to >>> produce the typeinfo reference for v8_inspector::V8InspectorClient. >>> >>> Is it reasonable to submit a PR to make this change? Sorry to be so >>> pushy, but this is a bit of a hassle for us, currently. >>> >>> Thanks >>> >>> On Thursday, September 26, 2024 at 12:25:53 PM UTC-4 alex...@gmail.com >>> wrote: >>> >>>> We have code that implements v8_inspector::V8InspectorClient and when >>>> we upgraded to V8 13.1.36 (thought he problem looks like it's there up to >>>> 13.1.99) we get the following when we try to link: >>>> >>>> ld64.lld: error: undefined symbol: typeinfo for >>>> v8_inspector::V8InspectorClient >>>> >>> referenced by /Users/imagine/src/inspector.cc >>>> >>> out/arm64.mac.release/obj/inspector.o:(symbol typeinfo for >>>> imagine::InspectorClient+0x10) >>>> >>> did you mean: vtable for v8_inspector::V8InspectorClient >>>> >>> defined in: >>>> v8/out/arm64.mac.release/obj/libv8_monolith.a(v8-inspector-impl.o) >>>> clang++: error: linker command failed with exit code 1 (use -v to see >>>> invocation) >>>> >>>> This seems to be because the following newish virtual functions in the >>>> base class have no default implementation: >>>> >>>> virtual void consoleTime(v8::Isolate* isolate, v8::Local<v8::String> >>>> label); >>>> virtual void consoleTimeEnd(v8::Isolate* isolate, >>>> v8::Local<v8::String> label); >>>> virtual void consoleTimeStamp(v8::Isolate* isolate, >>>> v8::Local<v8::String> label); >>>> >>>> We don't want to use rtti so we locally modified v8-inspector.h to >>>> provide an empty implementation for these functions to get around the >>>> problem, which worked fine, but, obviously we don't want to do that >>>> forever. >>>> >>>> Is there another way around this? Should we submit a change to add >>>> default implementations for these functions or will someone else pick this >>>> up? >>>> >>> -- >>> >> >> > -- -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/v8-users/abdd57b7-1ead-403d-9200-6228a09cf0d6n%40googlegroups.com.