diff options
author | Quincey Koziol <koziol@lbl.gov> | 2020-10-06 22:37:42 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-06 22:37:42 (GMT) |
commit | 66bcfd97a80870fb8336ba218541e2b477448d89 (patch) | |
tree | 3de7490ae27b7e9a30315b3672f65d4d682cdcd4 /bin/trace | |
parent | c0e087a65a2f1ab354d3016bc29262eeec722d6f (diff) | |
download | hdf5-66bcfd97a80870fb8336ba218541e2b477448d89.zip hdf5-66bcfd97a80870fb8336ba218541e2b477448d89.tar.gz hdf5-66bcfd97a80870fb8336ba218541e2b477448d89.tar.bz2 |
Update reformatting settings, trace wrapping, and printf-format strings (#22)
* Add BEGIN_FUNC / CATCH / END_FUNC to macros
* Remove incorrect trailing '{'
* Update trace script to wrap H5TRACE macros at 110 characters and improve
comments for code that performs this operation.
* Clean up printf-formatting in H5public.h and correct some oversights in the code.
* Reformat with BEGIN_FUNC / END_FUNC handled correctly by clang-format
* Run clang-format on changes.
* Correct H5_SIZEOF_HSIZE_T/H5_SIZEOF_HSSIZE_T macros to match typedef.
* And make the undef value match also.
* Update comment
* Update clang-format actions to exclude generated files.
* Post-process generated H5LTparse.h file as well as H5LTparse.c file.
* Fix formatting
* Update version of github clang-format action
Diffstat (limited to 'bin/trace')
-rwxr-xr-x | bin/trace | 38 |
1 files changed, 31 insertions, 7 deletions
@@ -210,6 +210,14 @@ $Source = ""; "ssize_t" => "Zs", ); + +############################################################################## +# Maximum length of H5TRACE macro line +# If the ColumnLimit in .clang-format is changed, this value will need to be updated +# +my $max_trace_macro_line_len = 110; + + ############################################################################## # Print an error message. # @@ -287,7 +295,7 @@ sub rewrite_func ($$$$$) { # Parse arguments if ($args eq "void") { - $trace = "H5TRACE0(\"$rettype\",\"\");\n"; + $trace = "H5TRACE0(\"$rettype\", \"\");\n"; } else { # Split arguments. First convert `/*in,out*/' to get rid of the # comma, then split the arguments on commas. @@ -331,18 +339,34 @@ sub rewrite_func ($$$$$) { } } } + + # Compose the trace macro $trace = "H5TRACE" . scalar(@arg_str) . "(\"$rettype\", \""; $trace .= join("", @arg_str) . "\""; - my $len = 4 + length $trace; + my $len = 4 + length $trace; # Add 4, for indenting the line for (@arg_name) { - if ($len + length >= 77) { - $trace .= ",\n $_"; - $len = 13 + length; + # Wrap lines that will be longer than the limit, after ');' is added + if ($len + length >= ($max_trace_macro_line_len - 2)) { + # Wrap line, with indention + $trace .= ",\n "; + $len = 13; # Set to 13, for indention + + # Indent an extra space to account for extra digit in 'H5TRACE' macro + if (scalar(@arg_str) >= 10) { + $trace .= " "; + $len++; + } } else { - $trace .= ", $_"; - $len += 1 + length; + $trace .= ", "; + $len += 2; # Add 2, for ', ' } + + # Append argument + $trace .= "$_"; + $len += length; # Add length of appended argument name } + + # Append final ');' for macro $trace .= ");\n"; } goto error if grep {/!/} @arg_str; |