diff options
Diffstat (limited to 'examples/using_cpp_libc.py')
-rw-r--r-- | examples/using_cpp_libc.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/examples/using_cpp_libc.py b/examples/using_cpp_libc.py new file mode 100644 index 0000000..e930f5b --- /dev/null +++ b/examples/using_cpp_libc.py @@ -0,0 +1,30 @@ +#----------------------------------------------------------------- +# pycparser: using_cpp_libc.py +# +# Shows how to use the provided 'cpp' (on Windows, substitute for +# the 'real' cpp if you're on Linux/Unix) and "fake" libc includes +# to parse a file that includes standard C headers. +# +# Eli Bendersky [https://eli.thegreenplace.net/] +# License: BSD +#----------------------------------------------------------------- +import sys + +# This is not required if you've installed pycparser into +# your site-packages/ with setup.py +# +sys.path.extend(['.', '..']) + +from pycparser import parse_file + + +if __name__ == "__main__": + if len(sys.argv) > 1: + filename = sys.argv[1] + else: + filename = 'examples/c_files/year.c' + + ast = parse_file(filename, use_cpp=True, + cpp_path='cpp', + cpp_args=r'-Iutils/fake_libc_include') + ast.show() |