So I've spent a couple of hours looking at this. I mostly like the code, and
I appreciate the attention to coding style in it. Here are my outstanding
criticisms:
- (as stated earlier) I don't want us to check in libedit.
- We need to move TokerMsg to Toker::Msg (toplevel classes should be in
their own header files). Also, since TokerMsg seems to be something that
ends up getting passed around all over the place, we should move this
state information into Toker.
- Use the (fairly recent) tracing infrastructure instead of printf (see
model/Serializer.h's "trace" variable and crack_main.cc's initialization
of the option. Also, trace to cerr.
- I think LLVMBuilder::eraseSection() can still leave functions
dangling because crack allows nested functions, so if you did
void f() { void g() { <erase>
I think f() would be left dangling.
- There's LLVM code in purgeUnterminatedFunctions that's clearly lifted from
LLVM's verifier. It needs to be either rewritten or moved to another
module under the original licensing, preferably the former.
- I still think that module sections can be accomplished with fewer
additions to the builder.
- I noticed some test code in there (good!) which should really be moved
into the new unit test binary or something like it. Also, I didn't notice
any broader system tests for the REPL, we'll want to do this somehow
so we can tell if we break any of these features.
I started going through and doing a more detailed review, but it sounds like
you may not have time to work on this right now. As it stands, I don't have
time to work on it right now either. So I think I'm just going to hold onto
these changes and look into integrating them either before the 1.0 release,
but after I deal with everything else.
Thanks for your patience, I promise you that some form of this will get
integrated upstream at some time.
> --
> You received this message because you are subscribed to the Google Groups "crack-lang-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
crack-lang-de...@googlegroups.com.
> For more options, visit
https://groups.google.com/groups/opt_out.
Lokah Samasta Sukhino Bhavantu - May all beings everywhere be happy and free.
And may my own thoughts and actions contribute to that happiness and freedom.
=============================================================================