fix missing return value for failed alloc
add Carbon as a dependency