File: lexical.ref

package info (click to toggle)
cppo 1.8.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 588 kB
  • sloc: ml: 2,133; makefile: 54; sh: 11
file content (36 lines) | stat: -rw-r--r-- 1,015 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# 1 "lexical.cppo"
(* This test shows that the definition of BAR captures the original
   definition of FOO, so even if FOO is redefined, the expansion of
   BAR does not change. *)
# 8 "lexical.cppo"
 "new definition"  
# 8 "lexical.cppo"
    (* expands to "new definition" *)
# 9 "lexical.cppo"
  "original definition"   
# 9 "lexical.cppo"
    (* expands to "original definition" *)

(* This test shows that a formal parameter can shadow a previously
   defined macro. *)
# 14 "lexical.cppo"
 42  
# 14 "lexical.cppo"
      (* expands to 42 *)

(* This test shows that two formal parameters can have the same
   name. In that case, the second parameter shadows the first one. *)
# 19 "lexical.cppo"
 23+23  
# 19 "lexical.cppo"
         (* expands to 23+23 *)

(* This test shows that it is OK to pass an empty argument to a macro
   that expects one parameter. This is interpreted as passing one
   empty argument. *)
# 25 "lexical.cppo"
 show(42) 
# 26 "lexical.cppo"
 show("23") 
# 27 "lexical.cppo"
 show()