mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-12-27 08:01:04 +08:00
b5e2752ad6
---------------------- ./COPYING Reformatted as text instead of C. Removed zlib crew from the list of contributors since no zlib code is actually in the hdf5 library. ./INSTALL ./INSTALL.ascired ./MANIFEST Minor updates for Beta release including version number change. ./INSTALL_MAINT Added information about making a release. ./RELEASE Updated function list based on public header files. ./bin/checkposix Got rid of complaints about some obvious things. ./doc/html/H5.api.html ./doc/html/RM_H5F.html ./src/H5F.c ./src/H5Fpublic.h ./test/tfile.c Changed H5Fget_create_template() and H5Fget_access_template() to H5Fget_create_plist() and H5Fget_access_plist() since that conforms better to lots of other names. ./doc/html/Datatypes.html ./doc/html/ExternalFiles.html ./doc/html/Files.html ./doc/html/H5.api.html ./doc/html/H5.sample_code.html ./doc/html/RM_H5F.html ./doc/html/RM_H5Front.html Changed `template' to `property list', etc. ./doc/html/Ragged.html [NEW] Documentation for ragged arrays. ./src/H5Iprivate.h ./src/H5Ipublic.h ./src/H5I.c Changed the scope of some symbols to be more local. ./src/H5.c ./src/H5AC.c ./src/H5D.c ./src/H5E.c ./src/H5F.c ./src/H5Ffamily.c ./src/H5Fistore.c ./src/H5Flow.c ./src/H5Fsec2.c ./src/H5Fsplit.c ./src/H5Fstdio.c ./src/H5G.c ./src/H5Gnode.c ./src/H5HG.c ./src/H5I.c ./src/H5O.c ./src/H5Ocomp.c ./src/H5Odtype.c ./src/H5Oefl.c ./src/H5Omtime.c ./src/H5Oname.c ./src/H5P.c ./src/H5S.c ./src/H5Shyper.c ./src/H5Tbit.c ./src/H5Tconv.c ./src/H5V.c ./src/H5Z.c ./src/H5private.h Fixed some violations of our naming scheme by adding HD to the beginning of all Posix functions.
69 lines
1.9 KiB
Perl
Executable File
69 lines
1.9 KiB
Perl
Executable File
#!/usr/local/bin/perl -w
|
|
require 5.003;
|
|
|
|
# Copyright (C) 1997 National Center for Supercomputing Applications.
|
|
# All rights reserved.
|
|
#
|
|
# Robb Matzke, matzke@llnl.gov
|
|
# 30 Aug 1997
|
|
#
|
|
# Purpose: Given the names of C source files this script will print the
|
|
# file name, line number, and function name of any function that
|
|
# doesn't begin with the letter `h' or `H' as stipulated by the
|
|
# HDF5 programming style guide.
|
|
#
|
|
# Emacs users can run this script as the compile command and
|
|
# use `next-error' (usually bound to M-`) to find each name
|
|
# violation.
|
|
|
|
while (<>) {
|
|
|
|
# Get rid of comments by removing the inside part.
|
|
s|/\*.*?\*/||g;
|
|
if ($in_comment) {
|
|
if (/\*\//) {
|
|
s|.*?\*/||;
|
|
$in_comment = 0;
|
|
} else {
|
|
$_="\n";
|
|
}
|
|
} elsif (m|/\*|) {
|
|
s|/\*.*||;
|
|
$in_comment = 1;
|
|
}
|
|
|
|
# Get rid of string constants if they begin and end on this line.
|
|
s/([\'\"])([^\1]|\\\1)*?\1/$1$1/g;
|
|
|
|
# Get rid of preprocessor directives
|
|
s/^\#.*//;
|
|
|
|
# Now find all function calls on this line
|
|
while (($name)=/\b([a-gi-z_A-GI-Z]\w*)\s*\(/) {
|
|
$_ = $';
|
|
|
|
# Ignore C statements that look sort of like function
|
|
# calls.
|
|
next if $name =~ /^(if|for|return|sizeof|switch|while|void)$/;
|
|
|
|
# Ignore things that get misdetected because of the simplified
|
|
# parsing that takes place here.
|
|
next if $name =~ /^int$/;
|
|
|
|
# These are really HDF5 functions/macros even though they don't
|
|
# start with `h' or `H'.
|
|
next if $name =~ /^FUNC_(ENTER|LEAVE)(_INIT)?$/;
|
|
next if $name =~ /^U?INT(8|16|32|64)(ENCODE|DECODE)$/;
|
|
next if $name =~ /^(MIN3?|MAX3?|NELMTS|BOUND|CONSTR)$/;
|
|
next if $name =~ /^addr_defined$/;
|
|
|
|
# These functions/macros are exempt.
|
|
next if $name =~ /^(assert|main|[fs]?printf|va_(start|arg|end))$/;
|
|
|
|
print "$ARGV:$.: $name\n";
|
|
}
|
|
|
|
} continue {
|
|
close ARGV if eof;
|
|
}
|