summaryrefslogtreecommitdiffstats
path: root/tools/genStubs.tcl
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2017-06-22 21:48:48 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2017-06-22 21:48:48 (GMT)
commit150abed7cc47a2f1010df4700282f419d56a8a9f (patch)
treecdd8ab22151df5befc6b2793a5944e30e26fc38a /tools/genStubs.tcl
parent84481c3d32d19d3c3d8bdc97d6b378fb9665ced7 (diff)
parentf5cf6bbf990d8bb8c07e986c9f67c94f75c878ff (diff)
downloadtcl-150abed7cc47a2f1010df4700282f419d56a8a9f.zip
tcl-150abed7cc47a2f1010df4700282f419d56a8a9f.tar.gz
tcl-150abed7cc47a2f1010df4700282f419d56a8a9f.tar.bz2
merge trunktip_470
Diffstat (limited to 'tools/genStubs.tcl')
-rw-r--r--tools/genStubs.tcl35
1 files changed, 21 insertions, 14 deletions
diff --git a/tools/genStubs.tcl b/tools/genStubs.tcl
index 742aa46..830ba2b 100644
--- a/tools/genStubs.tcl
+++ b/tools/genStubs.tcl
@@ -191,19 +191,21 @@ proc genStubs::declare {args} {
regsub -all "\[ \t\n\]+" [string trim $decl] " " decl
set decl [parseDecl $decl]
- foreach platform $platformList {
- if {$decl ne ""} {
- set stubs($curName,$platform,$index) $decl
- if {![info exists stubs($curName,$platform,lastNum)] \
- || ($index > $stubs($curName,$platform,lastNum))} {
- set stubs($curName,$platform,lastNum) $index
- }
+ if {([lindex $platformList 0] eq "deprecated")} {
+ set stubs($curName,deprecated,$index) [lindex $platformList 1]
+ set stubs($curName,generic,$index) $decl
+ if {![info exists stubs($curName,generic,lastNum)] \
+ || ($index > $stubs($curName,generic,lastNum))} {
+ set stubs($curName,generic,lastNum) $index
}
- if {$platformList eq "deprecated"} {
- set stubs($curName,generic,$index) $decl
- if {![info exists stubs($curName,generic,lastNum)] \
- || ($index > $stubs($curName,generic,lastNum))} {
- set stubs($curName,$platform,lastNum) $index
+ } else {
+ foreach platform $platformList {
+ if {$decl ne ""} {
+ set stubs($curName,$platform,$index) $decl
+ if {![info exists stubs($curName,$platform,lastNum)] \
+ || ($index > $stubs($curName,$platform,lastNum))} {
+ set stubs($curName,$platform,lastNum) $index
+ }
}
}
}
@@ -468,9 +470,10 @@ proc genStubs::makeDecl {name decl index} {
append text "/* $index */\n"
if {[info exists stubs($name,deprecated,$index)]} {
- set line "[string toupper $libraryName]_DEPRECATED $rtype"
+ append text "[string toupper $libraryName]_DEPRECATED(\"$stubs($name,deprecated,$index)\")\n"
+ set line "$rtype"
} else {
- set line "$scspec $rtype"
+ set line "$scspec $rtype"
}
set count [expr {2 - ([string length $line] / 8)}]
append line [string range "\t\t\t" 0 $count]
@@ -582,11 +585,15 @@ proc genStubs::makeMacro {name decl index} {
proc genStubs::makeSlot {name decl index} {
lassign $decl rtype fname args
+ variable stubs
set lfname [string tolower [string index $fname 0]]
append lfname [string range $fname 1 end]
set text " "
+ if {[info exists stubs($name,deprecated,$index)]} {
+ append text "TCL_DEPRECATED_API(\"$stubs($name,deprecated,$index)\") "
+ }
if {$args eq ""} {
append text $rtype " *" $lfname "; /* $index */\n"
return $text