aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Aaron Gyes <me@aaron.gy>2016-06-05 21:42:01 -0700
committerGravatar Aaron Gyes <me@aaron.gy>2016-06-05 21:42:01 -0700
commit7ef40f4e53827e9e2c429230f5fadbd093cd6402 (patch)
tree40f7cdc623615302ba40ee5e0dfa57c3994dada8
parent9f21e3792aed2ac0c9bbbc94d3e4ff169cc0288a (diff)
parent2fafb13eaa30981754a8cd0ba8f3c082e3147fa8 (diff)
Merge pull request #3118 from floam/headerdoc-fixes
Update Xcode project, HeaderDoc comments. Fix various invalid HeaderDoc comments. Normalize autoload.cpp/autoload.h as an example of something closer to "proper" HeaderDoc formatting. Have clang/Xcode validate HeaderDoc comments. Remove key_reader.cpp from Xcode project.
-rw-r--r--fish.xcodeproj/project.pbxproj11
-rw-r--r--src/autoload.cpp19
-rw-r--r--src/autoload.h84
-rw-r--r--src/complete.cpp5
-rw-r--r--src/complete.h25
-rw-r--r--src/exec.cpp2
-rw-r--r--src/expand.h8
-rw-r--r--src/highlight.h4
-rw-r--r--src/pager.cpp4
-rw-r--r--src/parse_util.h2
-rw-r--r--src/parser.h9
-rw-r--r--src/postfork.cpp2
-rw-r--r--src/reader.cpp15
-rw-r--r--src/screen.h2
-rw-r--r--src/wcstringutil.h14
15 files changed, 99 insertions, 107 deletions
diff --git a/fish.xcodeproj/project.pbxproj b/fish.xcodeproj/project.pbxproj
index 21cd62e4..721b5a82 100644
--- a/fish.xcodeproj/project.pbxproj
+++ b/fish.xcodeproj/project.pbxproj
@@ -569,7 +569,6 @@
D0A0854B13B3ACEE0099B651 /* intern.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = intern.cpp; sourceTree = "<group>"; };
D0A0854C13B3ACEE0099B651 /* io.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = io.cpp; sourceTree = "<group>"; };
D0A0854D13B3ACEE0099B651 /* iothread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = iothread.cpp; sourceTree = "<group>"; };
- D0A0854E13B3ACEE0099B651 /* key_reader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = key_reader.cpp; sourceTree = "<group>"; };
D0A0854F13B3ACEE0099B651 /* kill.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = kill.cpp; sourceTree = "<group>"; };
D0A0855113B3ACEE0099B651 /* output.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = output.cpp; sourceTree = "<group>"; };
D0A0855213B3ACEE0099B651 /* parse_util.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parse_util.cpp; sourceTree = "<group>"; };
@@ -805,7 +804,6 @@
D0A0854D13B3ACEE0099B651 /* iothread.cpp */,
D0A0851813B3ACEE0099B651 /* kill.h */,
D0A0854F13B3ACEE0099B651 /* kill.cpp */,
- D0A0854E13B3ACEE0099B651 /* key_reader.cpp */,
D03EE83814DF88B200FC7150 /* lru.h */,
D0A0851A13B3ACEE0099B651 /* output.h */,
D0A0855113B3ACEE0099B651 /* output.cpp */,
@@ -1547,6 +1545,8 @@
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
CLANG_CXX_LIBRARY = "libc++";
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_NULLABLE_TO_NONNULL_CONVERSION = YES;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_ENABLE_CPP_EXCEPTIONS = NO;
@@ -1560,6 +1560,7 @@
"DOCDIR=L\\\"/usr/local/share/doc\\\"",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_LABEL = YES;
@@ -1762,6 +1763,8 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_NULLABLE_TO_NONNULL_CONVERSION = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_ENABLE_CPP_EXCEPTIONS = NO;
GCC_ENABLE_CPP_RTTI = YES;
@@ -1776,6 +1779,7 @@
);
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_LABEL = YES;
@@ -1795,6 +1799,8 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_NULLABLE_TO_NONNULL_CONVERSION = YES;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_ENABLE_CPP_EXCEPTIONS = NO;
@@ -1808,6 +1814,7 @@
"DOCDIR=L\\\"/usr/local/share/doc\\\"",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_LABEL = YES;
diff --git a/src/autoload.cpp b/src/autoload.cpp
index 9a8ebf40..56292fc6 100644
--- a/src/autoload.cpp
+++ b/src/autoload.cpp
@@ -22,7 +22,7 @@
#include "exec.h"
#include "wutil.h" // IWYU pragma: keep
-// The time before we'll recheck an autoloaded file.
+/// The time before we'll recheck an autoloaded file.
static const int kAutoloadStalenessInterval = 15;
file_access_attempt_t access_file(const wcstring &path, int mode) {
@@ -135,8 +135,9 @@ bool autoload_t::has_tried_loading(const wcstring &cmd) {
return func != NULL;
}
+/// @return Whether this function is stale.
+/// Internalized functions can never be stale.
static bool is_stale(const autoload_function_t *func) {
- // Return whether this function is stale. Internalized functions can never be stale.
return !func->is_internalized &&
time(NULL) - func->access.last_checked > kAutoloadStalenessInterval;
}
@@ -159,14 +160,12 @@ autoload_function_t *autoload_t::get_autoloaded_function_with_creation(const wcs
/// This internal helper function does all the real work. By using two functions, the internal
/// function can return on various places in the code, and the caller can take care of various
/// cleanup work.
-///
-/// cmd: the command name ('grep')
-/// really_load: whether to actually parse it as a function, or just check it it exists
-/// reload: whether to reload it if it's already loaded
-/// path_list: the set of paths to check
-///
-/// Result: if really_load is true, returns whether the function was loaded. Otherwise returns
-/// whether the function existed.
+/// @param cmd the command name ('grep')
+/// @param really_load Whether to actually parse it as a function, or just check it it exists
+/// @param reload Whether to reload it if it's already loaded
+/// @param path_list The set of paths to check
+/// @return If really_load is true, returns whether the function was loaded. Otherwise returns
+/// whether the function existed.
bool autoload_t::locate_file_and_maybe_load_it(const wcstring &cmd, bool really_load, bool reload,
const wcstring_list_t &path_list) {
// Note that we are NOT locked in this function!
diff --git a/src/autoload.h b/src/autoload.h
index 1d6d4a61..efa8c16d 100644
--- a/src/autoload.h
+++ b/src/autoload.h
@@ -11,15 +11,19 @@
#include "common.h"
#include "lru.h"
-// A struct responsible for recording an attempt to access a file.
+/// Record of an attempt to access a file.
struct file_access_attempt_t {
- time_t mod_time; // modification time of the file
- time_t last_checked; // when we last checked the file
- bool accessible; // whether we believe we could access this file
- bool stale; // whether the access attempt is stale
- int error; // if we could not access the file, the error code
+ /// Modification time of the file
+ time_t mod_time;
+ /// When we last checked the file
+ time_t last_checked;
+ /// Whether or not we believe we can access this file
+ bool accessible;
+ /// The access attempt is stale
+ bool stale;
+ /// If we cannot access the file, the error code encountered.
+ int error;
};
-
file_access_attempt_t access_file(const wcstring &path, int mode);
struct autoload_function_t : public lru_node_t {
@@ -29,12 +33,15 @@ struct autoload_function_t : public lru_node_t {
is_loaded(false),
is_placeholder(false),
is_internalized(false) {}
- file_access_attempt_t access; // the last access attempt
- bool is_loaded; // whether we have actually loaded this function
- // Whether we are a placeholder that stands in for "no such function". If this is true, then
- // is_loaded must be false.
+
+ /// The last access attempt recorded
+ file_access_attempt_t access;
+ /// Have we actually loaded this function?
+ bool is_loaded;
+ /// Whether we are a placeholder that stands in for "no such function". If this is true, then
+ /// is_loaded must be false.
bool is_placeholder;
- // Whether this function came from a builtin "internalized" script.
+ /// Whether this function came from a builtin "internalized" script.
bool is_internalized;
};
@@ -45,24 +52,23 @@ struct builtin_script_t {
class env_vars_snapshot_t;
-// A class that represents a path from which we can autoload, and the autoloaded contents.
+/// Class representing a path from which we can autoload and the autoloaded contents.
class autoload_t : private lru_cache_t<autoload_function_t> {
private:
- // Lock for thread safety.
+ /// Lock for thread safety.
pthread_mutex_t lock;
- // The environment variable name.
+ /// The environment variable name.
const wcstring env_var_name;
- // Builtin script array.
+ /// Builtin script array.
const struct builtin_script_t *const builtin_scripts;
- // Builtin script count.
+ /// Builtin script count.
const size_t builtin_script_count;
- // The path from which we most recently autoloaded.
+ /// The path from which we most recently autoloaded.
wcstring last_path;
- // That path, tokenized (split on separators).
+ /// the most reecently autoloaded path, tokenized (split on separators).
wcstring_list_t last_path_tokenized;
-
- // A table containing all the files that are currently being loaded. This is here to help
- // prevent recursion.
+ /// A table containing all the files that are currently being loaded.
+ /// This is here to help prevent recursion.
std::set<wcstring> is_loading_set;
void remove_all_functions(void) { this->evict_all_nodes(); }
@@ -76,39 +82,31 @@ class autoload_t : private lru_cache_t<autoload_function_t> {
bool allow_eviction);
protected:
- // Overridable callback for when a command is removed.
+ /// Overridable callback for when a command is removed.
virtual void command_removed(const wcstring &cmd) {}
public:
- // Create an autoload_t for the given environment variable name.
+ /// Create an autoload_t for the given environment variable name.
autoload_t(const wcstring &env_var_name_var, const builtin_script_t *scripts,
size_t script_count);
- virtual ~autoload_t(); // destructor
-
- // Autoload the specified file, if it exists in the specified path. Do not load it multiple
- // times unless its timestamp changes or parse_util_unload is called.
- //
- // Autoloading one file may unload another.
- //
- // \param cmd the filename to search for. The suffix '.fish' is always added to this name
- // \param on_unload a callback function to run if a suitable file is found, which has not
- // already been run. unload will also be called for old files which are unloaded.
- // \param reload wheter to recheck file timestamps on already loaded files
+ virtual ~autoload_t();
+
+ /// Autoload the specified file, if it exists in the specified path. Do not load it multiple
+ /// times unless its timestamp changes or parse_util_unload is called.
+ /// Autoloading one file may unload another.
+ /// @param cmd the filename to search for. The suffix '.fish' is always added to this name
+ /// @param reload wheter to recheck file timestamps on already loaded files
int load(const wcstring &cmd, bool reload);
- // Check whether we have tried loading the given command. Does not do any I/O.
+ /// Check whether we have tried loading the given command. Does not do any I/O.
bool has_tried_loading(const wcstring &cmd);
- // Tell the autoloader that the specified file, in the specified path, is no longer loaded.
- //
- // \param cmd the filename to search for. The suffix '.fish' is always added to this name
- // \param on_unload a callback function which will be called before (re)loading a file, may be
- // used to unload the previous file.
- // \return non-zero if the file was removed, zero if the file had not yet been loaded
+ /// Tell the autoloader that the specified file, in the specified path, is no longer loaded.
+ /// Returns non-zero if the file was removed, zero if the file had not yet been loaded
int unload(const wcstring &cmd);
- // Check whether the given command could be loaded, but do not load it.
+ /// Check whether the given command could be loaded, but do not load it.
bool can_load(const wcstring &cmd, const env_vars_snapshot_t &vars);
};
#endif
diff --git a/src/complete.cpp b/src/complete.cpp
index f686ab31..e23e9ce1 100644
--- a/src/complete.cpp
+++ b/src/complete.cpp
@@ -652,8 +652,7 @@ static wcstring complete_function_desc(const wcstring &fn) {
/// Complete the specified command name. Search for executables in the path, executables defined
/// using an absolute path, functions, builtins and directories for implicit cd commands.
///
-/// \param cmd the command string to find completions for
-/// \param comp the list to add all completions to
+/// \param str_cmd the command string to find completions for
void completer_t::complete_cmd(const wcstring &str_cmd, bool use_function, bool use_builtin,
bool use_command, bool use_implicit_cd) {
if (str_cmd.empty()) return;
@@ -704,7 +703,7 @@ void completer_t::complete_cmd(const wcstring &str_cmd, bool use_function, bool
/// \param str The string to complete.
/// \param args The list of option arguments to be evaluated.
/// \param desc Description of the completion
-/// \param comp_out The list into which the results will be inserted
+/// \param flags The list into which the results will be inserted
void completer_t::complete_from_args(const wcstring &str, const wcstring &args,
const wcstring &desc, complete_flags_t flags) {
bool is_autosuggest = (this->type() == COMPLETE_AUTOSUGGEST);
diff --git a/src/complete.h b/src/complete.h
index 57c743c0..d9203aaf 100644
--- a/src/complete.h
+++ b/src/complete.h
@@ -99,6 +99,13 @@ enum {
};
typedef uint32_t completion_request_flags_t;
+enum complete_option_type_t {
+ option_type_args_only, // no option
+ option_type_short, // -x
+ option_type_single_long, // -foo
+ option_type_double_long // --foo
+};
+
/// Add a completion.
///
/// All supplied values are copied, they should be freed by or otherwise disposed by the caller.
@@ -117,14 +124,12 @@ typedef uint32_t completion_request_flags_t;
/// complete -c grep -s d -x -a "read skip recurse"
///
/// \param cmd Command to complete.
-/// \param cmd_type If cmd_type is PATH, cmd will be interpreted as the absolute
+/// \param cmd_is_path If cmd_is_path is true, cmd will be interpreted as the absolute
/// path of the program (optionally containing wildcards), otherwise it
/// will be interpreted as the command name.
-/// \param short_opt The single character name of an option. (-a is a short option,
-/// --all and -funroll are long options)
-/// \param long_opt The multi character name of an option. (-a is a short option, --all and
-/// -funroll are long options)
-/// \param long_mode Whether to use old style, single dash long options.
+/// \param option The name of an option.
+/// \param option_type The type of option: can be option_type_short (-x),
+/// option_type_single_long (-foo), option_type_double_long (--bar).
/// \param result_mode Whether to search further completions when this completion has been
/// succesfully matched. If result_mode is SHARED, any other completions may also be used. If
/// result_mode is NO_FILES, file completion should not be used, but other completions may be used.
@@ -135,16 +140,12 @@ typedef uint32_t completion_request_flags_t;
/// \param condition a command to be run to check it this completion should be used. If \c condition
/// is empty, the completion is always used.
/// \param flags A set of completion flags
-enum complete_option_type_t {
- option_type_args_only, // no option
- option_type_short, // -x
- option_type_single_long, // -foo
- option_type_double_long // --foo
-};
void complete_add(const wchar_t *cmd, bool cmd_is_path, const wcstring &option,
complete_option_type_t option_type, int result_mode, const wchar_t *condition,
const wchar_t *comp, const wchar_t *desc, int flags);
+
+
/// Sets whether the completion list for this command is complete. If true, any options not matching
/// one of the provided options will be flagged as an error by syntax highlighting.
void complete_set_authoritative(const wchar_t *cmd, bool cmd_type, bool authoritative);
diff --git a/src/exec.cpp b/src/exec.cpp
index aefdbc12..a5bdbc0b 100644
--- a/src/exec.cpp
+++ b/src/exec.cpp
@@ -315,7 +315,7 @@ static bool io_transmogrify(const io_chain_t &in_chain, io_chain_t *out_chain,
/// \param def the code to evaluate, or the empty string if none
/// \param node_offset the offset of the node to evalute, or NODE_OFFSET_INVALID
/// \param block_type the type of block to push on evaluation
-/// \param io the io redirections to be performed on this block
+/// \param ios the io redirections to be performed on this block
static void internal_exec_helper(parser_t &parser, const wcstring &def, node_offset_t node_offset,
enum block_type_t block_type, const io_chain_t &ios) {
// If we have a valid node offset, then we must not have a string to execute.
diff --git a/src/expand.h b/src/expand.h
index 7c82d72e..2f1dd2a6 100644
--- a/src/expand.h
+++ b/src/expand.h
@@ -33,7 +33,7 @@ enum {
/// Don't generate descriptions.
EXPAND_NO_DESCRIPTIONS = 1 << 6,
/// Don't expand jobs (but you can still expand processes). This is because
- // job expansion is not thread safe.
+ /// job expansion is not thread safe.
EXPAND_SKIP_JOBS = 1 << 7,
/// Don't expand home directories.
EXPAND_SKIP_HOME_DIRECTORIES = 1 << 8,
@@ -46,7 +46,7 @@ enum {
/// working directories.
EXPAND_SPECIAL_FOR_CD = 1 << 11,
/// Do expansions specifically to support external command completions. This means using PATH as
- // a list of potential working directories.
+ /// a list of potential working directories.
EXPAND_SPECIAL_FOR_COMMAND = 1 << 12
};
typedef int expand_flags_t;
@@ -109,7 +109,7 @@ enum expand_error_t {
///
/// \param input The parameter to expand
/// \param output The list to which the result will be appended.
-/// \param flag Specifies if any expansion pass should be skipped. Legal values are any combination
+/// \param flags Specifies if any expansion pass should be skipped. Legal values are any combination
/// of EXPAND_SKIP_CMDSUBST EXPAND_SKIP_VARIABLES and EXPAND_SKIP_WILDCARDS
/// \param errors Resulting errors, or NULL to ignore
///
@@ -123,7 +123,7 @@ __warn_unused expand_error_t expand_string(const wcstring &input, std::vector<co
/// string. This is used for expanding command names.
///
/// \param inout_str The parameter to expand in-place
-/// \param flag Specifies if any expansion pass should be skipped. Legal values are any combination
+/// \param flags Specifies if any expansion pass should be skipped. Legal values are any combination
/// of EXPAND_SKIP_CMDSUBST EXPAND_SKIP_VARIABLES and EXPAND_SKIP_WILDCARDS
/// \param errors Resulting errors, or NULL to ignore
///
diff --git a/src/highlight.h b/src/highlight.h
index fa62010a..c503e97a 100644
--- a/src/highlight.h
+++ b/src/highlight.h
@@ -69,7 +69,7 @@ struct file_detection_context_t;
/// Perform syntax highlighting for the shell commands in buff. The result is stored in the color
/// array as a color_code from the HIGHLIGHT_ enum for each character in buff.
///
-/// \param buff The buffer on which to perform syntax highlighting
+/// \param buffstr The buffer on which to perform syntax highlighting
/// \param color The array in wchich to store the color codes. The first 8 bits are used for fg
/// color, the next 8 bits for bg color.
/// \param pos the cursor position. Used for quote matching, etc.
@@ -87,7 +87,7 @@ void highlight_shell_no_io(const wcstring &buffstr, std::vector<highlight_spec_t
/// highlighted. The result is stored in the color array as a color_code from the HIGHLIGHT_ enum
/// for each character in buff.
///
-/// \param buff The buffer on which to perform syntax highlighting
+/// \param buffstr The buffer on which to perform syntax highlighting
/// \param color The array in wchich to store the color codes. The first 8 bits are used for fg
/// color, the next 8 bits for bg color.
/// \param pos the cursor position. Used for quote matching, etc.
diff --git a/src/pager.cpp b/src/pager.cpp
index 222b510f..d9411362 100644
--- a/src/pager.cpp
+++ b/src/pager.cpp
@@ -143,12 +143,12 @@ line_t pager_t::completion_print_item(const wcstring &prefix, const comp_t *c, s
/// Print the specified part of the completion list, using the specified column offsets and quoting
/// style.
///
-/// \param l The list of completions to print
/// \param cols number of columns to print in
-/// \param width An array specifying the width of each column
+/// \param width_per_column An array specifying the width of each column
/// \param row_start The first row to print
/// \param row_stop the row after the last row to print
/// \param prefix The string to print before each completion
+/// \param lst The list of completions to print
void pager_t::completion_print(size_t cols, int *width_per_column, size_t row_start,
size_t row_stop, const wcstring &prefix, const comp_info_list_t &lst,
page_rendering_t *rendering) const {
diff --git a/src/parse_util.h b/src/parse_util.h
index 92a1e939..98caaea8 100644
--- a/src/parse_util.h
+++ b/src/parse_util.h
@@ -113,7 +113,7 @@ bool parse_util_argument_is_help(const wchar_t *s, int min_match);
/// \param quote If not NULL, store the type of quote this parameter has, can be either ', " or \\0,
/// meaning the string is not quoted.
/// \param offset If not NULL, get_param will store the offset to the beginning of the parameter.
-/// \param type If not NULL, get_param will store the token type.
+/// \param out_type If not NULL, get_param will store the token type.
void parse_util_get_parameter_info(const wcstring &cmd, const size_t pos, wchar_t *quote,
size_t *offset, enum token_type *out_type);
diff --git a/src/parser.h b/src/parser.h
index d3fd8803..653ca8c6 100644
--- a/src/parser.h
+++ b/src/parser.h
@@ -312,15 +312,6 @@ class parser_t {
/// parser_t will clean it up.
profile_item_t *create_profile_item();
- /// Test if the specified string can be parsed, or if more bytes need to be read first. The
- /// result will have the PARSER_TEST_ERROR bit set if there is a syntax error in the code, and
- /// the PARSER_TEST_INCOMPLETE bit set if the code contains unclosed blocks.
- ///
- /// \param buff the text buffer to test
- /// \param block_level if non-null, the block nesting level will be filled out into this array
- /// \param out if non-null, any errors in the command will be filled out into this buffer
- /// \param prefix the prefix string to prepend to each error message written to the \c out
- /// buffer.
void get_backtrace(const wcstring &src, const parse_error_list_t &errors,
wcstring *output) const;
diff --git a/src/postfork.cpp b/src/postfork.cpp
index 08deb77c..f88934b7 100644
--- a/src/postfork.cpp
+++ b/src/postfork.cpp
@@ -114,7 +114,7 @@ int set_child_group(job_t *j, process_t *p, int print_errors) {
/// close_unused_internal_pipes() and closing the universal variable server file descriptor. It then
/// goes on to perform all the redirections described by \c io.
///
-/// \param io the list of IO redirections for the child
+/// \param io_chain the list of IO redirections for the child
///
/// \return 0 on sucess, -1 on failure
static int handle_child_io(const io_chain_t &io_chain) {
diff --git a/src/reader.cpp b/src/reader.cpp
index 968a508a..2d6a6bb8 100644
--- a/src/reader.cpp
+++ b/src/reader.cpp
@@ -1827,14 +1827,15 @@ static void handle_token_history(int forward, int reset) {
}
}
+
+enum move_word_dir_t { MOVE_DIR_LEFT, MOVE_DIR_RIGHT };
+
/// Move buffer position one word or erase one word. This function updates both the internal buffer
/// and the screen. It is used by M-left, M-right and ^W to do block movement or block erase.
///
-/// \param dir Direction to move/erase. 0 means move left, 1 means move right.
+/// \param move_right true if moving right
/// \param erase Whether to erase the characters along the way or only move past them.
-/// \param new if the new kill item should be appended to the previous kill item or not.
-enum move_word_dir_t { MOVE_DIR_LEFT, MOVE_DIR_RIGHT };
-
+/// \param newv if the new kill item should be appended to the previous kill item or not.
static void move_word(editable_line_t *el, bool move_right, bool erase,
enum move_word_style_t style, bool newv) {
// Return if we are already at the edge.
@@ -2171,11 +2172,9 @@ static int threaded_highlight(background_highlight_context_t *ctx) {
/// highlighting maykes characters under the sursor unreadable.
///
/// \param match_highlight_pos_adjust the adjustment to the position to use for bracket matching.
-/// This is added to the current cursor position and may be negative.
-/// \param error if non-null, any possible errors in the buffer are further descibed by the strings
-/// inserted into the specified arraylist
+/// This is added to the current cursor position and may be negative.
/// \param no_io if true, do a highlight that does not perform I/O, synchronously. If false, perform
-/// an asynchronous highlight in the background, which may perform disk I/O.
+/// an asynchronous highlight in the background, which may perform disk I/O.
static void reader_super_highlight_me_plenty(int match_highlight_pos_adjust, bool no_io) {
const editable_line_t *el = &data->command_line;
long match_highlight_pos = (long)el->position + match_highlight_pos_adjust;
diff --git a/src/screen.h b/src/screen.h
index 43e256d1..74cda3be 100644
--- a/src/screen.h
+++ b/src/screen.h
@@ -149,7 +149,7 @@ class screen_t {
/// \param indent the indent to use for the command line
/// \param cursor_pos where the cursor is
/// \param pager_data any pager data, to append to the screen
-/// \param position_is_within_pager whether the position is within the pager line (first line)
+/// \param cursor_is_within_pager whether the position is within the pager line (first line)
void s_write(screen_t *s, const wcstring &left_prompt, const wcstring &right_prompt,
const wcstring &commandline, size_t explicit_len, const highlight_spec_t *colors,
const int *indent, size_t cursor_pos, const page_rendering_t &pager_data,
diff --git a/src/wcstringutil.h b/src/wcstringutil.h
index ea4489e7..4a86f86e 100644
--- a/src/wcstringutil.h
+++ b/src/wcstringutil.h
@@ -7,18 +7,16 @@
#include "common.h"
-/// Typedef that represents a range in a wcstring. The first element is the location, the second is
-/// the count.
+/// @typedef wcstring_range represents a range in a wcstring.
+/// The first element is the location, the second is the count.
typedef std::pair<wcstring::size_type, wcstring::size_type> wcstring_range;
/// wcstring equivalent of wcstok(). Supports NUL. For convenience and wcstok() compatibility, the
/// first character of each token separator is replaced with NUL.
-///
-/// Returns a pair of (pos, count).
-/// Returns (npos, npos) when it's done.
-/// Returns (pos, npos) when the token is already known to be the final token.
-///
-/// Note that the final token may not necessarily return (pos, npos).
+/// @return Returns a pair of (pos, count).
+/// This will be (npos, npos) when it's done. In the form of (pos, npos)
+/// when the token is already known to be the final token.
+/// @note The final token may not necessarily return (pos, npos).
wcstring_range wcstring_tok(wcstring& str, const wcstring& needle,
wcstring_range last = wcstring_range(0, 0));