macros need to be evaluated before everything but also after everything :D
Unsafe.new.io || "Empty..."
IO, or pledge to return an
IO, you can only return that, no nil
def read_input : String?; ...; end. It may return a String, or nil. In this case, the compiler will force you to work with the result in a type-safe manner
Ubuntu 16.04.2 LTS
$ crystal build test.cr --release crystal: /var/cache/omnibus/src/llvm/llvm-3.8.1.src/lib/CodeGen/LexicalScopes.cpp:160: llvm::LexicalScope* llvm::LexicalScopes::getOrCreateRegularScope(const llvm::DILocalScope*): Assertion `cast<DISubprogram>(Scope)->describes(MF->getFunction())' failed. /usr/bin/crystal: line 102: 7523 Aborted (core dumped) "$INSTALL_DIR/embedded/bin/crystal" "$@"
buildjust fine, but when I
build --release, I'm getting this error: https://gist.github.com/domgetter/2da07138559cc4b86d3bcdbda66da398
makeis just taking awhile but I did give it the
-siflags so that's probably why.