Files
sdk/runtime/vm/allocation.cc
T
cshapiro@google.com da14bf70a7 Add attributions so printf like functions can have their arguments checked.
This change also corrects some misuses of format strings and format
arguments that discovered by the compiler checks.

Review URL: https://chromiumcodereview.appspot.com//10869063

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@11912 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-06 00:58:25 +00:00

28 lines
780 B
C++

// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
#include "vm/allocation.h"
#include "platform/assert.h"
#include "vm/isolate.h"
#include "vm/zone.h"
namespace dart {
ZoneAllocated::~ZoneAllocated() {
UNREACHABLE();
}
void* ZoneAllocated::operator new(uword size) {
Isolate* isolate = Isolate::Current();
ASSERT(isolate != NULL);
ASSERT(isolate->current_zone() != NULL);
if (size > static_cast<uword>(kIntptrMax)) {
FATAL1("ZoneAllocated object has unexpectedly large size %"Pu"", size);
}
return reinterpret_cast<void*>(isolate->current_zone()->AllocUnsafe(size));
}
} // namespace dart