Skip to content

does not give a valid preprocessing token/Since 1.8.6 #7930

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Keugon opened this issue Aug 26, 2018 · 4 comments · Fixed by arduino/arduino-builder#285
Closed

does not give a valid preprocessing token/Since 1.8.6 #7930

Keugon opened this issue Aug 26, 2018 · 4 comments · Fixed by arduino/arduino-builder#285

Comments

@Keugon
Copy link

Keugon commented Aug 26, 2018

PreWord iam not a Programmer just using Marlin for my 3d Printer
This Issue only appears when I try to compile it with 1.8.6 by 1.8.4 everything is fine i hope someone can identify the "Real Bug" here
*Bug report
Marlin Software.zip

Arduino: 1.8.6 (Windows 10), Board: "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

In file included from sketch\MarlinConfig.h:26:0,

                 from sketch\Marlin.h:36,

                 from sketch\Marlin_main.cpp:247:

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_DDR" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:95:36: note: in definition of macro '_SET_OUTPUT'

 #define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= _BV(DIO ## IO ## _PIN); } while (0)

                                    ^

sketch\fastio.h:113:30: note: in expansion of macro 'SET_OUTPUT'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:95:61: note: in definition of macro '_SET_OUTPUT'

 #define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= _BV(DIO ## IO ## _PIN); } while (0)

                                                             ^

sketch\fastio.h:113:30: note: in expansion of macro 'SET_OUTPUT'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_RPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:90:41: note: in definition of macro '_WRITE'

 #define _WRITE(IO, v) do { if (&(DIO ## IO ## _RPORT) >= (uint8_t *)0x100) {_WRITE_C(IO, v); } else {_WRITE_NC(IO, v); }; } while (0)

                                         ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_WPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:79:51: note: in definition of macro '_WRITE_C'

                                          {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } \

                                                   ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:79:78: note: in definition of macro '_WRITE_C'

                                          {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } \

                                                                              ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_WPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:84:51: note: in definition of macro '_WRITE_C'

                                          {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); } \

                                                   ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:84:79: note: in definition of macro '_WRITE_C'

                                          {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); } \

                                                                               ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

In file included from sketch\MarlinConfig.h:26:0,

                 from sketch\Marlin.h:36,

                 from sketch\Marlin_main.cpp:247:

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_WPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:75:48: note: in definition of macro '_WRITE_NC'

 #define _WRITE_NC(IO, v)  do { if (v) {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); }; } while (0)

                                                ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:75:75: note: in definition of macro '_WRITE_NC'

 #define _WRITE_NC(IO, v)  do { if (v) {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); }; } while (0)

                                                                           ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_WPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:75:104: note: in definition of macro '_WRITE_NC'

 #define _WRITE_NC(IO, v)  do { if (v) {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); }; } while (0)

                                                                                                        ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

In file included from sketch\MarlinConfig.h:26:0,

                 from sketch\Marlin.h:36,

                 from sketch\Marlin_main.cpp:247:

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:75:132: note: in definition of macro '_WRITE_NC'

 #define _WRITE_NC(IO, v)  do { if (v) {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); }; } while (0)

                                                                                                                                    ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:914:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, HIGH);

     ^

sketch\Marlin_main.cpp:914:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, HIGH);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_DDR" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:95:36: note: in definition of macro '_SET_OUTPUT'

 #define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= _BV(DIO ## IO ## _PIN); } while (0)

                                    ^

sketch\fastio.h:113:30: note: in expansion of macro 'SET_OUTPUT'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:95:61: note: in definition of macro '_SET_OUTPUT'

 #define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= _BV(DIO ## IO ## _PIN); } while (0)

                                                             ^

sketch\fastio.h:113:30: note: in expansion of macro 'SET_OUTPUT'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_RPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:90:41: note: in definition of macro '_WRITE'

 #define _WRITE(IO, v) do { if (&(DIO ## IO ## _RPORT) >= (uint8_t *)0x100) {_WRITE_C(IO, v); } else {_WRITE_NC(IO, v); }; } while (0)

                                         ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_WPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:79:51: note: in definition of macro '_WRITE_C'

                                          {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } \

                                                   ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:79:78: note: in definition of macro '_WRITE_C'

                                          {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } \

                                                                              ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_WPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:84:51: note: in definition of macro '_WRITE_C'

                                          {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); } \

                                                   ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:84:79: note: in definition of macro '_WRITE_C'

                                          {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); } \

                                                                               ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

In file included from sketch\MarlinConfig.h:26:0,

                 from sketch\Marlin.h:36,

                 from sketch\Marlin_main.cpp:247:

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_WPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:75:48: note: in definition of macro '_WRITE_NC'

 #define _WRITE_NC(IO, v)  do { if (v) {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); }; } while (0)

                                                ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:75:75: note: in definition of macro '_WRITE_NC'

 #define _WRITE_NC(IO, v)  do { if (v) {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); }; } while (0)

                                                                           ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_WPORT" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:75:104: note: in definition of macro '_WRITE_NC'

 #define _WRITE_NC(IO, v)  do { if (v) {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); }; } while (0)

                                                                                                        ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

In file included from sketch\MarlinConfig.h:26:0,

                 from sketch\Marlin.h:36,

                 from sketch\Marlin_main.cpp:247:

pins_GT2560_REV_A.h:93:32: error: pasting "/* Must be enabled at startup to keep power flowing*/" and "_PIN" does not give a valid preprocessing token

 #define SUICIDE_PIN        54  // Must be enabled at startup to keep power flowing

                                ^

sketch\fastio.h:75:132: note: in definition of macro '_WRITE_NC'

 #define _WRITE_NC(IO, v)  do { if (v) {DIO ##  IO ## _WPORT |= _BV(DIO ## IO ## _PIN); } else {DIO ##  IO ## _WPORT &= ~_BV(DIO ## IO ## _PIN); }; } while (0)

                                                                                                                                    ^

sketch\fastio.h:102:21: note: in expansion of macro '_WRITE'

 #define WRITE(IO,V) _WRITE(IO,V)

                     ^

sketch\fastio.h:113:46: note: in expansion of macro 'WRITE'

 #define OUT_WRITE(IO, v) do{ SET_OUTPUT(IO); WRITE(IO, v); }while(0)

                                              ^

sketch\Marlin_main.cpp:927:5: note: in expansion of macro 'OUT_WRITE'

     OUT_WRITE(SUICIDE_PIN, LOW);

     ^

sketch\Marlin_main.cpp:927:15: note: in expansion of macro 'SUICIDE_PIN'

     OUT_WRITE(SUICIDE_PIN, LOW);

               ^

exit status 1
pasting "/* Must be enabled at startup to keep power flowing*/" and "_DDR" does not give a valid preprocessing token

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
@DominikPalo
Copy link

@per1234
Copy link
Collaborator

per1234 commented Aug 26, 2018

I previously thought this was arduino/arduino-preprocessor#6 but now I understand that Arduino IDE 1.8.6 doesn't actually use arduino-preprocessor (despite bundling that tool). The MCVE in arduino/arduino-preprocessor#6 doesn't result in an error in Arduino IDE 1.8.6. When I replace Arduino IDE 1.8.6's arduino-builder 1.4.0 with the previous arduino-builder 1.3.25 release the bug reported here does not occur. So this is an arduino-builder bug rather than an arduino-preprocessor bug.

@facchinm
Copy link
Member

I started bisecting this issue (it was tough since it falls into the compiler cache optimizations, so I was getting a lot of false positives). Anyway, the commit that introduced the regression is arduino/arduino-builder@fcc9c5d

@matthijskooijman do you have any spare time to take a look? Reverting just works in getting rid of the expansion bug but I'd like to understand clearly what is going on

@Keugon
Copy link
Author

Keugon commented Aug 27, 2018

Huh not epected that reaction on that just wana say thank you for care about my porly sumited issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants