clang++ fix.

"C++11 requires lambda with omitted result type to consist of a single return statement"
上级 b7a7aa53
...@@ -270,7 +270,7 @@ iget(u32 dev, u32 inum) ...@@ -270,7 +270,7 @@ iget(u32 dev, u32 inum)
u32 cur_free = icache_free[mycpu()->id].x; u32 cur_free = icache_free[mycpu()->id].x;
if (cur_free == 0) { if (cur_free == 0) {
struct inode *victim = 0; struct inode *victim = 0;
ins->enumerate([&victim](const pair<u32, u32>&, inode* ip) { ins->enumerate([&victim](const pair<u32, u32>&, inode* ip)->bool{
if (ip->ref || ip->type == T_DIR) if (ip->ref || ip->type == T_DIR)
return false; return false;
...@@ -632,7 +632,7 @@ dir_flush(struct inode *dp) ...@@ -632,7 +632,7 @@ dir_flush(struct inode *dp)
return; return;
u32 off = 0; u32 off = 0;
dp->dir->enumerate([dp, &off](const strbuf<DIRSIZ> &name, const u32 &inum) { dp->dir->enumerate([dp, &off](const strbuf<DIRSIZ> &name, const u32 &inum)->bool{
struct dirent de; struct dirent de;
strncpy(de.name, name._buf, DIRSIZ); strncpy(de.name, name._buf, DIRSIZ);
de.inum = inum; de.inum = inum;
......
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论