diff --git a/alib2cli/src/command/CastsIntrospectionCommand.h b/alib2cli/src/command/CastsIntrospectionCommand.h index bae9ff05cee61867eaa3592137f059d42f261862..217925218db9642c97f64735832b3a7a59a12339 100644 --- a/alib2cli/src/command/CastsIntrospectionCommand.h +++ b/alib2cli/src/command/CastsIntrospectionCommand.h @@ -26,7 +26,9 @@ public: } virtual Command::Result run ( Environment & environment ) const override { - std::string param = m_param->eval ( environment ); + std::string param; + if ( m_param != nullptr ) + param = m_param->eval ( environment ); if ( m_from ) printTypes ( abstraction::Registry::listCastsFrom ( param ) ); diff --git a/alib2cli/src/parser/Parser.cpp b/alib2cli/src/parser/Parser.cpp index d9de2ba5d9206a3de37e96f138b5e6bf73ba3a27..bec2d8c6d7624ab8f74bcbce3b717c8874310965 100644 --- a/alib2cli/src/parser/Parser.cpp +++ b/alib2cli/src/parser/Parser.cpp @@ -271,7 +271,7 @@ std::unique_ptr < Command > Parser::introspect_command ( ) { } else if ( check_nonreserved_kw ( "casts" ) ) { match_nonreserved_kw ( "casts" ); std::pair < bool, bool > from_to = introspect_cast_from_to ( ); - std::unique_ptr < cli::Arg > param = arg ( ); + std::unique_ptr < cli::Arg > param = optional_arg ( ); match ( cli::Lexer::TokenType::END ); return std::make_unique < CastsIntrospectionCommand > ( std::move ( param ), from_to.first, from_to.second ); } else {