src/AST/Expr.cpp
Type * addrType( const ptr<Type> & type ) {
		if ( auto refType = type.as< ReferenceType >() ) {
			return new ReferenceType( addrType( refType->base ), refType->qualifiers );
		} else {
			return new PointerType( type );
		}
	}
/// The type of the address of a type.
/// Caller is responsible for managing returned memory
The type of the address of a type.
Caller is responsible for managing returned memory
The type of the address of a type . Caller is responsible for managing returned memory
Type * addrType( const ptr<Type> & type ) {
		if ( auto refType = type.as< ReferenceType >() ) {
			return new ReferenceType( addrType( refType->base ), refType->qualifiers );
		} else {
			return new PointerType( type );
		}
	}
Type * addrType ( const ptr < Type > & type ) { if ( auto refType = type . as < ReferenceType > ( ) ) { return new ReferenceType ( addrType ( refType -> base ) , refType -> qualifiers ) ; } else { return new PointerType ( type ) ; } }
The type of the address of a type.
The type of the address of a type .