From b624d1e699ea196984715dee5c878676b8ec79bf Mon Sep 17 00:00:00 2001 From: simon Date: Fri, 14 Mar 2003 21:20:32 +0000 Subject: [PATCH] While I'm adding explanatory comments by the coroutine macros, it occurs to me that would also be a good place to put a copy of the instructions for disabling Edit and Continue debugging. Nobody _actually_ reads the README, after all... git-svn-id: svn://svn.tartarus.org/sgt/putty@2935 cda61777-01e9-0310-a592-d414129be87e --- ssh.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/ssh.c b/ssh.c index 82fbf152..662d521f 100644 --- a/ssh.c +++ b/ssh.c @@ -277,6 +277,17 @@ enum { PKT_END, PKT_INT, PKT_CHAR, PKT_DATA, PKT_STR, PKT_BIGNUM }; * http://www.chiark.greenend.org.uk/~sgtatham/coroutines.html * * which explains the theory behind these macros. + * + * In particular, if you are getting `case expression not constant' + * errors when building with MS Visual Studio, this is because MS's + * Edit and Continue debugging feature causes their compiler to + * violate ANSI C. To disable Edit and Continue debugging: + * + * - right-click ssh.c in the FileView + * - click Settings + * - select the C/C++ tab and the General category + * - under `Debug info:', select anything _other_ than `Program + * Database for Edit and Continue'. */ #define crBegin(v) { int *crLine = &v; switch(v) { case 0:; #define crState(t) \ -- 2.11.0