Journal Articles
Browse in : |
All
> Journals
> CVu
> 153
(14)
All > Topics > Programming (877) Any of these categories - All of these categories |
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Title: Intrusive Identifiers
Author: Administrator
Date: 03 June 2003 13:15:58 +01:00 or Tue, 03 June 2003 13:15:58 +01:00
Summary:
Body:
I just came across a potentially nasty subtlety in the GNU macro preprocessor M4 (version 1.4).
The words "format", "divert" and "shift" are all recognised as built-in macros, even without any parameters. So if your text happens to contain "format", "divert" or "shift", these words will disappear and strange things can happen.
You can of course work around the problem by undefining them if you don't want to use them:
undefine('format') undefine('divert') undefine('shift')
but I really think that there should be a big, obvious warning in the documentation (at the very least), and I've filed a bug report accordingly.
Lessons for more general programming? Be careful when putting identifiers into somebody else's namespace, especially when they're not likely to know all the identifiers you use when they write their code or text. This is particularly the case with C and C++ macros, which are substituted "blindly" without regard to scope or syntax.
Notes:
More fields may be available via dynamicdata ..