Fun Extending the C Preprocessor

(davidpriver.com)

16 points | by david2ndaccount 2 days ago

2 comments

  • teo_zero 1 hour ago
    There are a couple of constructs that you end up re-creating as soon as you need non-trivial preprocessing.

    One of those is the two-stage CAT, another one is the NARG the article talks about.

    __COUNTER__ is going to be added to C29, the next version of the standard, maybe there's hope for __VA_COUNT__ and __CAT__ too!

  • pajko 1 day ago
    You don't need to extend the preprocessor to have MAP: https://github.com/swansontec/map-macro
    • david2ndaccount 17 hours ago
      The article shows how to implement map, but it should be a builtin