Skip to content


Fix bootimage build #40

wants to merge 1 commit into from

2 participants

ReadyTalk member

The bootimage build (specifically, bootimage.cpp) was broken in the wake of the recent codegen namespace reorganization. This fixes the errors.

ReadyTalk member

Travis claims the bootimage build is working just fine:

What platform(s) are you having trouble on?

ReadyTalk member
ReadyTalk member

I was building on darwin-x86_64; given the changes in the patch, I don't know how it's building unless those same changes already made their way into the repo. I'll investigate.

ReadyTalk member
ReadyTalk member

Oops... You're right. I should have pulled to make sure you didn't already fix it. :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Feb 17, 2013
  1. @joshuawarner32

    fix bootimage build

    joshuawarner32 committed
This page is out of date. Refresh to see the latest.
Showing with 6 additions and 4 deletions.
  1. +6 −4 src/bootimage.cpp
10 src/bootimage.cpp
@@ -19,6 +19,8 @@
#include "binaryToObject/tools.h"
#include "lzma.h"
+#include "util/abort.h"
// since we aren't linking against libstdc++, we must implement this
// ourselves:
extern "C" void __cxa_pure_virtual(void) { abort(); }
@@ -287,7 +289,7 @@ makeCodeImage(Thread* t, Zone* zone, BootImage* image, uint8_t* code,
object methods = 0;
PROTECT(t, methods);
- DelayedPromise* addresses = 0;
+ avian::codegen::DelayedPromise* addresses = 0;
class MyOffsetResolver: public OffsetResolver {
@@ -326,7 +328,7 @@ makeCodeImage(Thread* t, Zone* zone, BootImage* image, uint8_t* code,
Client(Thread* t): t(t) { }
virtual void NO_RETURN handleError() {
- vm::abort(t);
+ abort(t);
@@ -671,7 +673,7 @@ makeCodeImage(Thread* t, Zone* zone, BootImage* image, uint8_t* code,
address = codeCompiled(t, methodCode(t, method));
- static_cast<ListenPromise*>(pointerValue(t, tripleSecond(t, calls)))
+ static_cast<avian::codegen::ListenPromise*>(pointerValue(t, tripleSecond(t, calls)))
->listener->resolve(address, 0);
@@ -1252,7 +1254,7 @@ updateConstants(Thread* t, object constants, HeapMap* heapTable)
unsigned target = heapTable->find(tripleFirst(t, constants));
expect(t, target > 0);
- for (Promise::Listener* pl = static_cast<ListenPromise*>
+ for (avian::codegen::Promise::Listener* pl = static_cast<avian::codegen::ListenPromise*>
(pointerValue(t, tripleSecond(t, constants)))->listener;
pl; pl = pl->next)
Something went wrong with that request. Please try again.