#include <stdio.h>
#include <stdlib.h>
#ifdef __cplusplus
namespace cxx {
class voidptr {
void *p_;
public:
voidptr (void *p = 0) : p_(p) {}
template <typename T>
operator T * () const { return static_cast<T *>(p_); }
};
voidptr malloc (size_t sz) { return ::malloc(sizeof(int)); }
}
#define malloc(x) cxx::malloc(x)
#endif
struct process {
const char *programName;
int cpuTime;
int startTime;
struct process *next;
};
struct process *init_process (char *programName, int startTime, int cpuTime) {
struct process *proc;
proc = (malloc(sizeof(struct process)));
if (proc == NULL) {
printf("Fatal error: memory allocation failure.\nTerminating.\n");
exit(1);
}
proc->programName = programName;
proc->cpuTime = cpuTime;
proc->startTime = startTime;
proc->next = NULL;
return(proc);
};
int main () {
char name[] = "";
init_process(name, 0, 0);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCiNpZmRlZiBfX2NwbHVzcGx1cwpuYW1lc3BhY2UgY3h4IHsKICAgIGNsYXNzIHZvaWRwdHIgewogICAgICAgIHZvaWQgKnBfOwogICAgcHVibGljOgogICAgICAgIHZvaWRwdHIgKHZvaWQgKnAgPSAwKSA6IHBfKHApIHt9CiAgICAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiAgICAgICAgb3BlcmF0b3IgVCAqICgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFQgKj4ocF8pOyB9CiAgICB9OwogICAgdm9pZHB0ciBtYWxsb2MgKHNpemVfdCBzeikgeyByZXR1cm4gOjptYWxsb2Moc2l6ZW9mKGludCkpOyB9Cn0KI2RlZmluZSBtYWxsb2MoeCkgY3h4OjptYWxsb2MoeCkKI2VuZGlmCgpzdHJ1Y3QgcHJvY2VzcyB7CiAgICBjb25zdCBjaGFyICpwcm9ncmFtTmFtZTsKICAgIGludCBjcHVUaW1lOwogICAgaW50IHN0YXJ0VGltZTsKICAgIHN0cnVjdCBwcm9jZXNzICpuZXh0Owp9OwoKc3RydWN0IHByb2Nlc3MgKmluaXRfcHJvY2VzcyAoY2hhciAqcHJvZ3JhbU5hbWUsIGludCBzdGFydFRpbWUsIGludCBjcHVUaW1lKSB7CiAgICBzdHJ1Y3QgcHJvY2VzcyAqcHJvYzsKICAgIHByb2MgPSAobWFsbG9jKHNpemVvZihzdHJ1Y3QgcHJvY2VzcykpKTsKICAgIGlmIChwcm9jID09IE5VTEwpIHsKICAgICAgICBwcmludGYoIkZhdGFsIGVycm9yOiBtZW1vcnkgYWxsb2NhdGlvbiBmYWlsdXJlLlxuVGVybWluYXRpbmcuXG4iKTsKICAgICAgICBleGl0KDEpOwogICAgfQogICAgcHJvYy0+cHJvZ3JhbU5hbWUgPSBwcm9ncmFtTmFtZTsKICAgIHByb2MtPmNwdVRpbWUgPSBjcHVUaW1lOwogICAgcHJvYy0+c3RhcnRUaW1lID0gc3RhcnRUaW1lOwogICAgcHJvYy0+bmV4dCA9IE5VTEw7CiAgICByZXR1cm4ocHJvYyk7Cn07CgppbnQgbWFpbiAoKSB7CiAgICBjaGFyIG5hbWVbXSA9ICIiOwogICAgaW5pdF9wcm9jZXNzKG5hbWUsIDAsIDApOwogICAgcmV0dXJuIDA7Cn0K