Preprocessor output

What is required to obtain a view of the preprocess output file?

Pre 1.0, Press shift when clicking verify or upload.

1.0+, look at preferences.

Step one: Shut down the Arduino IDE

Step two: In your Arduino preferences.txt file change preproc.save_build_files from false to true

Step three: Re-start the Arduino IDE and load the sketch.

Step four: Do a verbose compile by holding down the shift key while clicking on the Verify button.

Step five: Copy the compile command from the verbose output:

/Applications/Arduino22.app/Contents/Resources/Java/hardware/tools/avr/bin/avr-g++ -c -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=22 -I/Applications/Arduino22.app/Contents/Resources/Java/hardware/arduino/cores/arduino /var/folders/cs/p6yz0z1m8xj9lf0059b_lzw00000gn/T/build6003622113239050862.tmp/Blink.cpp -o/var/folders/cs/p6yz0z1m8xj9lf0059b_lzw00000gn/T/build6003622113239050862.tmp/Blink.cpp.o

Step six: Paste the command line into a text editor and make the following changes:

  1. Change the -c to -E
  2. Change the .o at the end to .l

/Applications/Arduino22.app/Contents/Resources/Java/hardware/tools/avr/bin/avr-g++ -E -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=22 -I/Applications/Arduino22.app/Contents/Resources/Java/hardware/arduino/cores/arduino /var/folders/cs/p6yz0z1m8xj9lf0059b_lzw00000gn/T/build6003622113239050862.tmp/Blink.cpp -o/var/folders/cs/p6yz0z1m8xj9lf0059b_lzw00000gn/T/build6003622113239050862.tmp/Blink.cpp.l

Step seven: Issue the edited command in a command shell.

Step eight: Your output is in the file named in that last -o switch. The one ending in ".cpp.l". It will be long. The Blink example resulted in 1347 lines (over 40,000 characters)

Thank-you, that worked, but unfortunately still leaves me no closer to finding the issue with line 28 of my header, of which there is no line 28...
the only thing i can see that might be wrong is enum CMOS4000Family {CD4040B=12,CD4020B=14,CD4013B=1,CD4024B=8}