emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CC Mode and GCC/CEDET integration for evaluating macros


From: martin rudalics
Subject: Re: CC Mode and GCC/CEDET integration for evaluating macros
Date: Sun, 03 May 2015 18:45:08 +0200

> But it fails for this simple case (zero
> includes, just from the top):
>
>      #define IN  1
>      #ifdef IN
>      double foo;
>      #endif
>
> Here, "double foo;" gets the shadow. I called `hide-ifdefs'.

Funny.  It doesn't get shadowed here.

But I've never got around to make `hide-ifdef-mode' work reasonably with
the Emacs code base.  I suppose that I'd have to set up some definitions
manually, then scan config.h and then scan the remaining header files in
the order they were processed by the compiler.  So if you could come up
with a solution, this would be very much appreciated here.

BTW, `hide-ifdef-mode' fails on my current config.h file with the trace
below.

martin

Debugger entered--Lisp error: (error "Bad token in parenthesized expression: L")
  signal(error ("Bad token in parenthesized expression: L"))
  error("Bad token in parenthesized expression: %s" L)
  hif-factor()
  hif-muldiv-expr()
  hif-math()
  hif-logshift-expr()
  hif-comp-expr()
  hif-eq-expr()
  hif-logand-expr()
  hif-logxor-expr()
  hif-logior-expr()
  hif-and-expr()
  hif-or-expr()
  hif-expr()
  hif-expr()
  hif-exprlist()
  hif-factor()
  hif-muldiv-expr()
  hif-math()
  hif-logshift-expr()
  hif-comp-expr()
  hif-eq-expr()
  hif-logand-expr()
  hif-logxor-expr()
  hif-logior-expr()
  hif-and-expr()
  hif-or-expr()
  hif-expr()
  hif-exprlist()
  hif-factor()
  hif-muldiv-expr()
  hif-math()
  hif-logshift-expr()
  hif-comp-expr()
  hif-eq-expr()
  hif-logand-expr()
  hif-logxor-expr()
  hif-logior-expr()
  hif-and-expr()
  hif-or-expr()
  hif-expr()
  hif-exprlist()
  hif-parse-exp((hif-lparen hif-lparen __GNUC__ hif-conditional hif-defined 
__GNUC_STDC_INLINE__ hif-and __GNUC_STDC_INLINE__ hif-colon hif-lparen 199901 L 
hif-less-equal __STDC_VERSION__ hif-and hif-not hif-defined __HP_cc hif-and 
hif-not hif-lparen hif-defined __SUNPRO_C hif-and __STDC__ hif-rparen 
hif-rparen hif-rparen hif-and hif-not hif-defined 
_GL_EXTERN_INLINE_STDHEADER_BUG hif-rparen))
  hif-canonicalize("\\(^\\|
\\)[    ]*#[    ]*if\\(n?def\\)?[       ]+")
  hif-possibly-hide(nil)
  hide-ifdef-guts()
  hif-recurse-on(1099 58650)
  hif-possibly-hide(t)
  hide-ifdef-guts()
  hide-ifdefs()
  hide-ifdef-mode(toggle)
  funcall-interactively(hide-ifdef-mode toggle)
  call-interactively(hide-ifdef-mode record nil)
  command-execute(hide-ifdef-mode record)
  execute-extended-command(nil "hide-ifdef-mode" "hide-ifdef-mode")
  funcall-interactively(execute-extended-command nil "hide-ifdef-mode" 
"hide-ifdef-mode")
  call-interactively(execute-extended-command nil nil)
  command-execute(execute-extended-command)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]