gawk-diffs
[Top][All Lists]
Advanced

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

[gawk-diffs] [SCM] gawk branch, gawk-5.0-stable, updated. gawk-4.1.0-373


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, gawk-5.0-stable, updated. gawk-4.1.0-3734-gc138c86
Date: Wed, 5 Jun 2019 14:40:39 -0400 (EDT)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".

The branch, gawk-5.0-stable has been updated
       via  c138c86811fd6dfa96e49cfca4f619294ae57f9c (commit)
      from  0d6254e250560c027116defc11ffdee410bc683f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=c138c86811fd6dfa96e49cfca4f619294ae57f9c

commit c138c86811fd6dfa96e49cfca4f619294ae57f9c
Author: Arnold D. Robbins <address@hidden>
Date:   Wed Jun 5 21:40:17 2019 +0300

    Update doc on isarray() and typeof().

diff --git a/doc/ChangeLog b/doc/ChangeLog
index 42c44fe..57765d5 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,6 +1,12 @@
+2019-06-05         Arnold D. Robbins     <address@hidden>
+
+       * gawktexi.in (Type Functions): Clarify isarray() and
+       typeof() behavior. Thanks to  Mark Krauze <address@hidden>,
+       for pointing out the issues.
+
 2019-05-22         Arnold D. Robbins     <address@hidden>
 
-       * gawk1, gawktexi.in: Document --lint=no-ext.
+       * gawk.1, gawktexi.in: Document --lint=no-ext.
 
 2019-05-06         Arnold D. Robbins     <address@hidden>
 
diff --git a/doc/gawk.info b/doc/gawk.info
index cffc93d..1bbd329 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -14211,16 +14211,19 @@ itself an array or not.  The second is inside the 
body of a user-defined
 function (not discussed yet; *note User-defined::), to test if a
 parameter is an array or not.
 
-     NOTE: Using 'isarray()' at the global level to test variables makes
-     no sense.  Because you are the one writing the program, you are
-     supposed to know if your variables are arrays or not.  And in fact,
-     due to the way 'gawk' works, if you pass the name of a variable
-     that has not been previously used to 'isarray()', 'gawk' ends up
-     turning it into a scalar.
+     NOTE: While you can use 'isarray()' at the global level to test
+     variables, doing so makes no sense.  Because _you_ are the one
+     writing the program, _you_ are supposed to know if your variables
+     are arrays or not.
 
    The 'typeof()' function is general; it allows you to determine if a
-variable or function parameter is a scalar, an array, or a strongly
-typed regexp.
+variable or function parameter is a scalar (number, string, or strongly
+typed regexp) or an array.
+
+   Normally, passing a variable that has never been used to a built-in
+function causes it to become a scalar variable (unassigned).  However,
+'isarray()' and 'typeof()' are different; they do not change their
+arguments from untyped to unassigned.
 
 
 File: gawk.info,  Node: I18N Functions,  Prev: Type Functions,  Up: Built-in
@@ -37168,328 +37171,328 @@ Ref: table-bitwise-ops592996
 Ref: Bitwise Functions-Footnote-1599059
 Ref: Bitwise Functions-Footnote-2599232
 Node: Type Functions599423
-Node: I18N Functions602174
-Node: User-defined603825
-Node: Definition Syntax604637
-Ref: Definition Syntax-Footnote-1610324
-Node: Function Example610395
-Ref: Function Example-Footnote-1613317
-Node: Function Calling613339
-Node: Calling A Function613927
-Node: Variable Scope614885
-Node: Pass By Value/Reference617879
-Node: Function Caveats620523
-Ref: Function Caveats-Footnote-1622570
-Node: Return Statement622690
-Node: Dynamic Typing625669
-Node: Indirect Calls626599
-Ref: Indirect Calls-Footnote-1636851
-Node: Functions Summary636979
-Node: Library Functions639684
-Ref: Library Functions-Footnote-1643291
-Ref: Library Functions-Footnote-2643434
-Node: Library Names643605
-Ref: Library Names-Footnote-1647272
-Ref: Library Names-Footnote-2647495
-Node: General Functions647581
-Node: Strtonum Function648684
-Node: Assert Function651706
-Node: Round Function655032
-Node: Cliff Random Function656572
-Node: Ordinal Functions657588
-Ref: Ordinal Functions-Footnote-1660651
-Ref: Ordinal Functions-Footnote-2660903
-Node: Join Function661113
-Ref: Join Function-Footnote-1662883
-Node: Getlocaltime Function663083
-Node: Readfile Function666825
-Node: Shell Quoting668802
-Node: Data File Management670203
-Node: Filetrans Function670835
-Node: Rewind Function674931
-Node: File Checking676840
-Ref: File Checking-Footnote-1678174
-Node: Empty Files678375
-Node: Ignoring Assigns680354
-Node: Getopt Function681904
-Ref: Getopt Function-Footnote-1693373
-Node: Passwd Functions693573
-Ref: Passwd Functions-Footnote-1702412
-Node: Group Functions702500
-Ref: Group Functions-Footnote-1710398
-Node: Walking Arrays710605
-Node: Library Functions Summary713613
-Node: Library Exercises715019
-Node: Sample Programs715484
-Node: Running Examples716254
-Node: Clones716982
-Node: Cut Program718206
-Node: Egrep Program728135
-Ref: Egrep Program-Footnote-1735647
-Node: Id Program735757
-Node: Split Program739437
-Ref: Split Program-Footnote-1742895
-Node: Tee Program743024
-Node: Uniq Program745814
-Node: Wc Program753435
-Ref: Wc Program-Footnote-1757690
-Node: Miscellaneous Programs757784
-Node: Dupword Program758997
-Node: Alarm Program761027
-Node: Translate Program765882
-Ref: Translate Program-Footnote-1770447
-Node: Labels Program770717
-Ref: Labels Program-Footnote-1774068
-Node: Word Sorting774152
-Node: History Sorting778224
-Node: Extract Program780059
-Node: Simple Sed788113
-Node: Igawk Program791187
-Ref: Igawk Program-Footnote-1805518
-Ref: Igawk Program-Footnote-2805720
-Ref: Igawk Program-Footnote-3805842
-Node: Anagram Program805957
-Node: Signature Program809019
-Node: Programs Summary810266
-Node: Programs Exercises811480
-Ref: Programs Exercises-Footnote-1815609
-Node: Advanced Features815700
-Node: Nondecimal Data817690
-Node: Array Sorting819281
-Node: Controlling Array Traversal819981
-Ref: Controlling Array Traversal-Footnote-1828349
-Node: Array Sorting Functions828467
-Ref: Array Sorting Functions-Footnote-1833558
-Node: Two-way I/O833754
-Ref: Two-way I/O-Footnote-1841475
-Ref: Two-way I/O-Footnote-2841662
-Node: TCP/IP Networking841744
-Node: Profiling844862
-Node: Advanced Features Summary853877
-Node: Internationalization855721
-Node: I18N and L10N857201
-Node: Explaining gettext857888
-Ref: Explaining gettext-Footnote-1863780
-Ref: Explaining gettext-Footnote-2863965
-Node: Programmer i18n864130
-Ref: Programmer i18n-Footnote-1869079
-Node: Translator i18n869128
-Node: String Extraction869922
-Ref: String Extraction-Footnote-1871054
-Node: Printf Ordering871140
-Ref: Printf Ordering-Footnote-1873926
-Node: I18N Portability873990
-Ref: I18N Portability-Footnote-1876446
-Node: I18N Example876509
-Ref: I18N Example-Footnote-1879784
-Ref: I18N Example-Footnote-2879857
-Node: Gawk I18N879966
-Node: I18N Summary880615
-Node: Debugger881956
-Node: Debugging882956
-Node: Debugging Concepts883397
-Node: Debugging Terms885206
-Node: Awk Debugging887781
-Ref: Awk Debugging-Footnote-1888726
-Node: Sample Debugging Session888858
-Node: Debugger Invocation889392
-Node: Finding The Bug890778
-Node: List of Debugger Commands897252
-Node: Breakpoint Control898585
-Node: Debugger Execution Control902279
-Node: Viewing And Changing Data905641
-Node: Execution Stack909182
-Node: Debugger Info910819
-Node: Miscellaneous Debugger Commands914890
-Node: Readline Support919952
-Node: Limitations920848
-Node: Debugging Summary923402
-Node: Namespaces924681
-Node: Global Namespace925760
-Node: Qualified Names927158
-Node: Default Namespace928157
-Node: Changing The Namespace928898
-Node: Naming Rules930512
-Node: Internal Name Management932360
-Node: Namespace Example933402
-Node: Namespace And Features935964
-Node: Namespace Summary937399
-Node: Arbitrary Precision Arithmetic938876
-Node: Computer Arithmetic940363
-Ref: table-numeric-ranges944129
-Ref: table-floating-point-ranges944622
-Ref: Computer Arithmetic-Footnote-1945280
-Node: Math Definitions945337
-Ref: table-ieee-formats948653
-Ref: Math Definitions-Footnote-1949256
-Node: MPFR features949361
-Node: FP Math Caution951079
-Ref: FP Math Caution-Footnote-1952151
-Node: Inexactness of computations952520
-Node: Inexact representation953480
-Node: Comparing FP Values954840
-Node: Errors accumulate956081
-Node: Getting Accuracy957514
-Node: Try To Round960224
-Node: Setting precision961123
-Ref: table-predefined-precision-strings961820
-Node: Setting the rounding mode963650
-Ref: table-gawk-rounding-modes964024
-Ref: Setting the rounding mode-Footnote-1967955
-Node: Arbitrary Precision Integers968134
-Ref: Arbitrary Precision Integers-Footnote-1971309
-Node: Checking for MPFR971458
-Node: POSIX Floating Point Problems972932
-Ref: POSIX Floating Point Problems-Footnote-1977217
-Node: Floating point summary977255
-Node: Dynamic Extensions979445
-Node: Extension Intro980998
-Node: Plugin License982264
-Node: Extension Mechanism Outline983061
-Ref: figure-load-extension983500
-Ref: figure-register-new-function985065
-Ref: figure-call-new-function986157
-Node: Extension API Description988219
-Node: Extension API Functions Introduction989861
-Ref: table-api-std-headers991697
-Node: General Data Types995562
-Ref: General Data Types-Footnote-11003923
-Node: Memory Allocation Functions1004222
-Ref: Memory Allocation Functions-Footnote-11008432
-Node: Constructor Functions1008531
-Node: Registration Functions1012117
-Node: Extension Functions1012802
-Node: Exit Callback Functions1018124
-Node: Extension Version String1019374
-Node: Input Parsers1020037
-Node: Output Wrappers1032758
-Node: Two-way processors1037270
-Node: Printing Messages1039535
-Ref: Printing Messages-Footnote-11040706
-Node: Updating ERRNO1040859
-Node: Requesting Values1041598
-Ref: table-value-types-returned1042335
-Node: Accessing Parameters1043271
-Node: Symbol Table Access1044506
-Node: Symbol table by name1045018
-Ref: Symbol table by name-Footnote-11048042
-Node: Symbol table by cookie1048170
-Ref: Symbol table by cookie-Footnote-11052355
-Node: Cached values1052419
-Ref: Cached values-Footnote-11055955
-Node: Array Manipulation1056108
-Ref: Array Manipulation-Footnote-11057199
-Node: Array Data Types1057236
-Ref: Array Data Types-Footnote-11059894
-Node: Array Functions1059986
-Node: Flattening Arrays1064484
-Node: Creating Arrays1071460
-Node: Redirection API1076227
-Node: Extension API Variables1079060
-Node: Extension Versioning1079771
-Ref: gawk-api-version1080200
-Node: Extension GMP/MPFR Versioning1081931
-Node: Extension API Informational Variables1083559
-Node: Extension API Boilerplate1084632
-Node: Changes from API V11088606
-Node: Finding Extensions1090178
-Node: Extension Example1090737
-Node: Internal File Description1091535
-Node: Internal File Ops1095615
-Ref: Internal File Ops-Footnote-11106965
-Node: Using Internal File Ops1107105
-Ref: Using Internal File Ops-Footnote-11109488
-Node: Extension Samples1109762
-Node: Extension Sample File Functions1111291
-Node: Extension Sample Fnmatch1118940
-Node: Extension Sample Fork1120427
-Node: Extension Sample Inplace1121645
-Node: Extension Sample Ord1124949
-Node: Extension Sample Readdir1125785
-Ref: table-readdir-file-types1126674
-Node: Extension Sample Revout1127479
-Node: Extension Sample Rev2way1128068
-Node: Extension Sample Read write array1128808
-Node: Extension Sample Readfile1130750
-Node: Extension Sample Time1131845
-Node: Extension Sample API Tests1133193
-Node: gawkextlib1133685
-Node: Extension summary1136603
-Node: Extension Exercises1140305
-Node: Language History1141547
-Node: V7/SVR3.11143203
-Node: SVR41145355
-Node: POSIX1146789
-Node: BTL1148169
-Node: POSIX/GNU1148898
-Node: Feature History1154676
-Node: Common Extensions1170722
-Node: Ranges and Locales1172005
-Ref: Ranges and Locales-Footnote-11176621
-Ref: Ranges and Locales-Footnote-21176648
-Ref: Ranges and Locales-Footnote-31176883
-Node: Contributors1177104
-Node: History summary1183057
-Node: Installation1184437
-Node: Gawk Distribution1185381
-Node: Getting1185865
-Node: Extracting1186828
-Node: Distribution contents1188466
-Node: Unix Installation1194946
-Node: Quick Installation1195628
-Node: Shell Startup Files1198042
-Node: Additional Configuration Options1199131
-Node: Configuration Philosophy1201446
-Node: Non-Unix Installation1203815
-Node: PC Installation1204275
-Node: PC Binary Installation1205113
-Node: PC Compiling1205548
-Node: PC Using1206665
-Node: Cygwin1210218
-Node: MSYS1211317
-Node: VMS Installation1211818
-Node: VMS Compilation1212609
-Ref: VMS Compilation-Footnote-11213838
-Node: VMS Dynamic Extensions1213896
-Node: VMS Installation Details1215581
-Node: VMS Running1217834
-Node: VMS GNV1222113
-Node: VMS Old Gawk1222848
-Node: Bugs1223319
-Node: Bug address1223982
-Node: Usenet1226964
-Node: Maintainers1227968
-Node: Other Versions1229229
-Node: Installation summary1236317
-Node: Notes1237519
-Node: Compatibility Mode1238313
-Node: Additions1239095
-Node: Accessing The Source1240020
-Node: Adding Code1241457
-Node: New Ports1247676
-Node: Derived Files1252051
-Ref: Derived Files-Footnote-11257711
-Ref: Derived Files-Footnote-21257746
-Ref: Derived Files-Footnote-31258344
-Node: Future Extensions1258458
-Node: Implementation Limitations1259116
-Node: Extension Design1260299
-Node: Old Extension Problems1261443
-Ref: Old Extension Problems-Footnote-11262961
-Node: Extension New Mechanism Goals1263018
-Ref: Extension New Mechanism Goals-Footnote-11266382
-Node: Extension Other Design Decisions1266571
-Node: Extension Future Growth1268684
-Node: Notes summary1269520
-Node: Basic Concepts1270678
-Node: Basic High Level1271359
-Ref: figure-general-flow1271641
-Ref: figure-process-flow1272326
-Ref: Basic High Level-Footnote-11275627
-Node: Basic Data Typing1275812
-Node: Glossary1279140
-Node: Copying1310978
-Node: GNU Free Documentation License1348521
-Node: Index1373641
+Node: I18N Functions602286
+Node: User-defined603937
+Node: Definition Syntax604749
+Ref: Definition Syntax-Footnote-1610436
+Node: Function Example610507
+Ref: Function Example-Footnote-1613429
+Node: Function Calling613451
+Node: Calling A Function614039
+Node: Variable Scope614997
+Node: Pass By Value/Reference617991
+Node: Function Caveats620635
+Ref: Function Caveats-Footnote-1622682
+Node: Return Statement622802
+Node: Dynamic Typing625781
+Node: Indirect Calls626711
+Ref: Indirect Calls-Footnote-1636963
+Node: Functions Summary637091
+Node: Library Functions639796
+Ref: Library Functions-Footnote-1643403
+Ref: Library Functions-Footnote-2643546
+Node: Library Names643717
+Ref: Library Names-Footnote-1647384
+Ref: Library Names-Footnote-2647607
+Node: General Functions647693
+Node: Strtonum Function648796
+Node: Assert Function651818
+Node: Round Function655144
+Node: Cliff Random Function656684
+Node: Ordinal Functions657700
+Ref: Ordinal Functions-Footnote-1660763
+Ref: Ordinal Functions-Footnote-2661015
+Node: Join Function661225
+Ref: Join Function-Footnote-1662995
+Node: Getlocaltime Function663195
+Node: Readfile Function666937
+Node: Shell Quoting668914
+Node: Data File Management670315
+Node: Filetrans Function670947
+Node: Rewind Function675043
+Node: File Checking676952
+Ref: File Checking-Footnote-1678286
+Node: Empty Files678487
+Node: Ignoring Assigns680466
+Node: Getopt Function682016
+Ref: Getopt Function-Footnote-1693485
+Node: Passwd Functions693685
+Ref: Passwd Functions-Footnote-1702524
+Node: Group Functions702612
+Ref: Group Functions-Footnote-1710510
+Node: Walking Arrays710717
+Node: Library Functions Summary713725
+Node: Library Exercises715131
+Node: Sample Programs715596
+Node: Running Examples716366
+Node: Clones717094
+Node: Cut Program718318
+Node: Egrep Program728247
+Ref: Egrep Program-Footnote-1735759
+Node: Id Program735869
+Node: Split Program739549
+Ref: Split Program-Footnote-1743007
+Node: Tee Program743136
+Node: Uniq Program745926
+Node: Wc Program753547
+Ref: Wc Program-Footnote-1757802
+Node: Miscellaneous Programs757896
+Node: Dupword Program759109
+Node: Alarm Program761139
+Node: Translate Program765994
+Ref: Translate Program-Footnote-1770559
+Node: Labels Program770829
+Ref: Labels Program-Footnote-1774180
+Node: Word Sorting774264
+Node: History Sorting778336
+Node: Extract Program780171
+Node: Simple Sed788225
+Node: Igawk Program791299
+Ref: Igawk Program-Footnote-1805630
+Ref: Igawk Program-Footnote-2805832
+Ref: Igawk Program-Footnote-3805954
+Node: Anagram Program806069
+Node: Signature Program809131
+Node: Programs Summary810378
+Node: Programs Exercises811592
+Ref: Programs Exercises-Footnote-1815721
+Node: Advanced Features815812
+Node: Nondecimal Data817802
+Node: Array Sorting819393
+Node: Controlling Array Traversal820093
+Ref: Controlling Array Traversal-Footnote-1828461
+Node: Array Sorting Functions828579
+Ref: Array Sorting Functions-Footnote-1833670
+Node: Two-way I/O833866
+Ref: Two-way I/O-Footnote-1841587
+Ref: Two-way I/O-Footnote-2841774
+Node: TCP/IP Networking841856
+Node: Profiling844974
+Node: Advanced Features Summary853989
+Node: Internationalization855833
+Node: I18N and L10N857313
+Node: Explaining gettext858000
+Ref: Explaining gettext-Footnote-1863892
+Ref: Explaining gettext-Footnote-2864077
+Node: Programmer i18n864242
+Ref: Programmer i18n-Footnote-1869191
+Node: Translator i18n869240
+Node: String Extraction870034
+Ref: String Extraction-Footnote-1871166
+Node: Printf Ordering871252
+Ref: Printf Ordering-Footnote-1874038
+Node: I18N Portability874102
+Ref: I18N Portability-Footnote-1876558
+Node: I18N Example876621
+Ref: I18N Example-Footnote-1879896
+Ref: I18N Example-Footnote-2879969
+Node: Gawk I18N880078
+Node: I18N Summary880727
+Node: Debugger882068
+Node: Debugging883068
+Node: Debugging Concepts883509
+Node: Debugging Terms885318
+Node: Awk Debugging887893
+Ref: Awk Debugging-Footnote-1888838
+Node: Sample Debugging Session888970
+Node: Debugger Invocation889504
+Node: Finding The Bug890890
+Node: List of Debugger Commands897364
+Node: Breakpoint Control898697
+Node: Debugger Execution Control902391
+Node: Viewing And Changing Data905753
+Node: Execution Stack909294
+Node: Debugger Info910931
+Node: Miscellaneous Debugger Commands915002
+Node: Readline Support920064
+Node: Limitations920960
+Node: Debugging Summary923514
+Node: Namespaces924793
+Node: Global Namespace925872
+Node: Qualified Names927270
+Node: Default Namespace928269
+Node: Changing The Namespace929010
+Node: Naming Rules930624
+Node: Internal Name Management932472
+Node: Namespace Example933514
+Node: Namespace And Features936076
+Node: Namespace Summary937511
+Node: Arbitrary Precision Arithmetic938988
+Node: Computer Arithmetic940475
+Ref: table-numeric-ranges944241
+Ref: table-floating-point-ranges944734
+Ref: Computer Arithmetic-Footnote-1945392
+Node: Math Definitions945449
+Ref: table-ieee-formats948765
+Ref: Math Definitions-Footnote-1949368
+Node: MPFR features949473
+Node: FP Math Caution951191
+Ref: FP Math Caution-Footnote-1952263
+Node: Inexactness of computations952632
+Node: Inexact representation953592
+Node: Comparing FP Values954952
+Node: Errors accumulate956193
+Node: Getting Accuracy957626
+Node: Try To Round960336
+Node: Setting precision961235
+Ref: table-predefined-precision-strings961932
+Node: Setting the rounding mode963762
+Ref: table-gawk-rounding-modes964136
+Ref: Setting the rounding mode-Footnote-1968067
+Node: Arbitrary Precision Integers968246
+Ref: Arbitrary Precision Integers-Footnote-1971421
+Node: Checking for MPFR971570
+Node: POSIX Floating Point Problems973044
+Ref: POSIX Floating Point Problems-Footnote-1977329
+Node: Floating point summary977367
+Node: Dynamic Extensions979557
+Node: Extension Intro981110
+Node: Plugin License982376
+Node: Extension Mechanism Outline983173
+Ref: figure-load-extension983612
+Ref: figure-register-new-function985177
+Ref: figure-call-new-function986269
+Node: Extension API Description988331
+Node: Extension API Functions Introduction989973
+Ref: table-api-std-headers991809
+Node: General Data Types995674
+Ref: General Data Types-Footnote-11004035
+Node: Memory Allocation Functions1004334
+Ref: Memory Allocation Functions-Footnote-11008544
+Node: Constructor Functions1008643
+Node: Registration Functions1012229
+Node: Extension Functions1012914
+Node: Exit Callback Functions1018236
+Node: Extension Version String1019486
+Node: Input Parsers1020149
+Node: Output Wrappers1032870
+Node: Two-way processors1037382
+Node: Printing Messages1039647
+Ref: Printing Messages-Footnote-11040818
+Node: Updating ERRNO1040971
+Node: Requesting Values1041710
+Ref: table-value-types-returned1042447
+Node: Accessing Parameters1043383
+Node: Symbol Table Access1044618
+Node: Symbol table by name1045130
+Ref: Symbol table by name-Footnote-11048154
+Node: Symbol table by cookie1048282
+Ref: Symbol table by cookie-Footnote-11052467
+Node: Cached values1052531
+Ref: Cached values-Footnote-11056067
+Node: Array Manipulation1056220
+Ref: Array Manipulation-Footnote-11057311
+Node: Array Data Types1057348
+Ref: Array Data Types-Footnote-11060006
+Node: Array Functions1060098
+Node: Flattening Arrays1064596
+Node: Creating Arrays1071572
+Node: Redirection API1076339
+Node: Extension API Variables1079172
+Node: Extension Versioning1079883
+Ref: gawk-api-version1080312
+Node: Extension GMP/MPFR Versioning1082043
+Node: Extension API Informational Variables1083671
+Node: Extension API Boilerplate1084744
+Node: Changes from API V11088718
+Node: Finding Extensions1090290
+Node: Extension Example1090849
+Node: Internal File Description1091647
+Node: Internal File Ops1095727
+Ref: Internal File Ops-Footnote-11107077
+Node: Using Internal File Ops1107217
+Ref: Using Internal File Ops-Footnote-11109600
+Node: Extension Samples1109874
+Node: Extension Sample File Functions1111403
+Node: Extension Sample Fnmatch1119052
+Node: Extension Sample Fork1120539
+Node: Extension Sample Inplace1121757
+Node: Extension Sample Ord1125061
+Node: Extension Sample Readdir1125897
+Ref: table-readdir-file-types1126786
+Node: Extension Sample Revout1127591
+Node: Extension Sample Rev2way1128180
+Node: Extension Sample Read write array1128920
+Node: Extension Sample Readfile1130862
+Node: Extension Sample Time1131957
+Node: Extension Sample API Tests1133305
+Node: gawkextlib1133797
+Node: Extension summary1136715
+Node: Extension Exercises1140417
+Node: Language History1141659
+Node: V7/SVR3.11143315
+Node: SVR41145467
+Node: POSIX1146901
+Node: BTL1148281
+Node: POSIX/GNU1149010
+Node: Feature History1154788
+Node: Common Extensions1170834
+Node: Ranges and Locales1172117
+Ref: Ranges and Locales-Footnote-11176733
+Ref: Ranges and Locales-Footnote-21176760
+Ref: Ranges and Locales-Footnote-31176995
+Node: Contributors1177216
+Node: History summary1183169
+Node: Installation1184549
+Node: Gawk Distribution1185493
+Node: Getting1185977
+Node: Extracting1186940
+Node: Distribution contents1188578
+Node: Unix Installation1195058
+Node: Quick Installation1195740
+Node: Shell Startup Files1198154
+Node: Additional Configuration Options1199243
+Node: Configuration Philosophy1201558
+Node: Non-Unix Installation1203927
+Node: PC Installation1204387
+Node: PC Binary Installation1205225
+Node: PC Compiling1205660
+Node: PC Using1206777
+Node: Cygwin1210330
+Node: MSYS1211429
+Node: VMS Installation1211930
+Node: VMS Compilation1212721
+Ref: VMS Compilation-Footnote-11213950
+Node: VMS Dynamic Extensions1214008
+Node: VMS Installation Details1215693
+Node: VMS Running1217946
+Node: VMS GNV1222225
+Node: VMS Old Gawk1222960
+Node: Bugs1223431
+Node: Bug address1224094
+Node: Usenet1227076
+Node: Maintainers1228080
+Node: Other Versions1229341
+Node: Installation summary1236429
+Node: Notes1237631
+Node: Compatibility Mode1238425
+Node: Additions1239207
+Node: Accessing The Source1240132
+Node: Adding Code1241569
+Node: New Ports1247788
+Node: Derived Files1252163
+Ref: Derived Files-Footnote-11257823
+Ref: Derived Files-Footnote-21257858
+Ref: Derived Files-Footnote-31258456
+Node: Future Extensions1258570
+Node: Implementation Limitations1259228
+Node: Extension Design1260411
+Node: Old Extension Problems1261555
+Ref: Old Extension Problems-Footnote-11263073
+Node: Extension New Mechanism Goals1263130
+Ref: Extension New Mechanism Goals-Footnote-11266494
+Node: Extension Other Design Decisions1266683
+Node: Extension Future Growth1268796
+Node: Notes summary1269632
+Node: Basic Concepts1270790
+Node: Basic High Level1271471
+Ref: figure-general-flow1271753
+Ref: figure-process-flow1272438
+Ref: Basic High Level-Footnote-11275739
+Node: Basic Data Typing1275924
+Node: Glossary1279252
+Node: Copying1311090
+Node: GNU Free Documentation License1348633
+Node: Index1373753
 
 End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 449fac4..1b248fc 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -20488,17 +20488,20 @@ an array or not.  The second is inside the body of a 
user-defined function
 array or not.
 
 @quotation NOTE
-Using @code{isarray()} at the global level to test
-variables makes no sense. Because you are the one writing the program, you
-are supposed to know if your variables are arrays or not. And in fact,
-due to the way @command{gawk} works, if you pass the name of a variable
-that has not been previously used to @code{isarray()}, @command{gawk}
-ends up turning it into a scalar.
+While you can use @code{isarray()} at the global level to test variables,
+doing so makes no sense. Because @emph{you} are the one writing the
+program, @emph{you} are supposed to know if your variables are arrays
+or not.
 @end quotation
 
 The @code{typeof()} function is general; it allows you to determine
-if a variable or function parameter is a scalar, an array, or a strongly
-typed regexp.
+if a variable or function parameter is a scalar (number, string,
+or strongly typed regexp) or an array.
+
+Normally, passing a variable that has never been used to a built-in
+function causes it to become a scalar variable (unassigned).
+However, @code{isarray()} and @code{typeof()} are different; they do
+not change their arguments from untyped to unassigned.
 
 @node I18N Functions
 @subsection String-Translation Functions
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 850d4e1..38fa95e 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -19530,17 +19530,20 @@ an array or not.  The second is inside the body of a 
user-defined function
 array or not.
 
 @quotation NOTE
-Using @code{isarray()} at the global level to test
-variables makes no sense. Because you are the one writing the program, you
-are supposed to know if your variables are arrays or not. And in fact,
-due to the way @command{gawk} works, if you pass the name of a variable
-that has not been previously used to @code{isarray()}, @command{gawk}
-ends up turning it into a scalar.
+While you can use @code{isarray()} at the global level to test variables,
+doing so makes no sense. Because @emph{you} are the one writing the
+program, @emph{you} are supposed to know if your variables are arrays
+or not.
 @end quotation
 
 The @code{typeof()} function is general; it allows you to determine
-if a variable or function parameter is a scalar, an array, or a strongly
-typed regexp.
+if a variable or function parameter is a scalar (number, string,
+or strongly typed regexp) or an array.
+
+Normally, passing a variable that has never been used to a built-in
+function causes it to become a scalar variable (unassigned).
+However, @code{isarray()} and @code{typeof()} are different; they do
+not change their arguments from untyped to unassigned.
 
 @node I18N Functions
 @subsection String-Translation Functions

-----------------------------------------------------------------------

Summary of changes:
 doc/ChangeLog   |   8 +-
 doc/gawk.info   | 665 ++++++++++++++++++++++++++++----------------------------
 doc/gawk.texi   |  19 +-
 doc/gawktexi.in |  19 +-
 4 files changed, 363 insertions(+), 348 deletions(-)


hooks/post-receive
-- 
gawk



reply via email to

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