summaryrefslogtreecommitdiffstats
path: root/bin/trace
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@lbl.gov>2020-10-06 22:37:42 (GMT)
committerGitHub <noreply@github.com>2020-10-06 22:37:42 (GMT)
commit66bcfd97a80870fb8336ba218541e2b477448d89 (patch)
tree3de7490ae27b7e9a30315b3672f65d4d682cdcd4 /bin/trace
parentc0e087a65a2f1ab354d3016bc29262eeec722d6f (diff)
downloadhdf5-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-xbin/trace38
1 files changed, 31 insertions, 7 deletions
diff --git a/bin/trace b/bin/trace
index fd0248e..ff91873 100755
--- a/bin/trace
+++ b/bin/trace
@@ -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;