summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xChangeLog1
-rw-r--r--TODO11
-rw-r--r--doc/ChangeLog3
-rw-r--r--doc/gawk.info433
-rw-r--r--doc/gawk.texi6
-rw-r--r--doc/gawktexi.in6
6 files changed, 245 insertions, 215 deletions
diff --git a/ChangeLog b/ChangeLog
index d5e70f70..248453b3 100755
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,7 @@
* awkgram.y: If profiling, correctly turn `print' into `print $0'.
Thanks to Hermann Peifer for the bug report.
+ * TODO: Updated.
2019-02-11 Arnold D. Robbins <arnold@skeeve.com>
diff --git a/TODO b/TODO
index 5f10b2b5..c46aedd7 100644
--- a/TODO
+++ b/TODO
@@ -1,4 +1,4 @@
-Sun Feb 3 20:34:46 IST 2019
+Fri Feb 15 12:51:55 IST 2019
============================
There were too many files tracking different thoughts and ideas for
@@ -30,6 +30,11 @@ Minor Cleanups and Code Improvements
See if something like b = a "" can be optimized to not do
a concatenation, but instead just set STRCUR on a.
+ Review all conditional warnings to see if they should be made
+ into calls to lintwarn. The advantage is that that --lint=fatal
+ would then make such warnings exit gawk, along with regular
+ lint warnings.
+
Minor New Features
------------------
@@ -43,6 +48,10 @@ Minor New Features
Enhance --lint=invalid to apply in more places.
+ Remove, if possible, the limitation that eval in the debugger
+ cannot run code that calls user defined functions which
+ execute return.
+
? Add an optional base to strtonum, allowing 2-36.
? Optional third argument for index indicating where to start the
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 1feb4ff7..3ed04bb4 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -2,6 +2,9 @@
* gawktexi.in: Fix wording for %f.
Thanks to Dan Liddell <dan_liddell@mentor.com> for the catch.
+ (Viewing And Changing Data): Note that eval has problems calling
+ user-defined functions that return a value. Thanks to
+ Lothar Langer <lotharla@gmail.com> for the report.
2019-02-11 Arnold D. Robbins <arnold@skeeve.com>
diff --git a/doc/gawk.info b/doc/gawk.info
index 1b4cb798..a91a2c63 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -22342,6 +22342,11 @@ The commands for viewing and changing variables inside of 'gawk' are:
can do anything that an 'awk' program would do: assign values to
variables, call functions, and so on.
+ NOTE: Do to implementation constraintss, using 'eval' to call
+ a user-defined function that returns a value does not work,
+ generating an error message. We hope to one day remove this
+ constraint.
+
'eval' PARAM, ...
AWK STATEMENTS
'end'
@@ -33974,7 +33979,7 @@ Index
* assert() user-defined function: Assert Function. (line 28)
* assertions: Assert Function. (line 6)
* assign values to variables, in debugger: Viewing And Changing Data.
- (line 58)
+ (line 63)
* assignment operators: Assignment Ops. (line 6)
* assignment operators, evaluation order: Assignment Ops. (line 110)
* assignment operators, lvalues/rvalues: Assignment Ops. (line 31)
@@ -34567,11 +34572,11 @@ Index
* debugger commands, o (option): Debugger Info. (line 57)
* debugger commands, option: Debugger Info. (line 57)
* debugger commands, p (print): Viewing And Changing Data.
- (line 35)
+ (line 40)
* debugger commands, print: Viewing And Changing Data.
- (line 35)
+ (line 40)
* debugger commands, printf: Viewing And Changing Data.
- (line 53)
+ (line 58)
* debugger commands, q (quit): Miscellaneous Debugger Commands.
(line 100)
* debugger commands, quit: Miscellaneous Debugger Commands.
@@ -34585,7 +34590,7 @@ Index
* debugger commands, s (step): Debugger Execution Control.
(line 68)
* debugger commands, set: Viewing And Changing Data.
- (line 58)
+ (line 63)
* debugger commands, si (stepi): Debugger Execution Control.
(line 75)
* debugger commands, silent: Debugger Execution Control.
@@ -34601,16 +34606,16 @@ Index
* debugger commands, u (until): Debugger Execution Control.
(line 82)
* debugger commands, undisplay: Viewing And Changing Data.
- (line 79)
+ (line 84)
* debugger commands, until: Debugger Execution Control.
(line 82)
* debugger commands, unwatch: Viewing And Changing Data.
- (line 83)
+ (line 88)
* debugger commands, up: Execution Stack. (line 36)
* debugger commands, w (watch): Viewing And Changing Data.
- (line 66)
+ (line 71)
* debugger commands, watch: Viewing And Changing Data.
- (line 66)
+ (line 71)
* debugger commands, where (backtrace): Execution Stack. (line 13)
* debugger, b command: Finding The Bug. (line 32)
* debugger, backtrace command: Finding The Bug. (line 52)
@@ -34660,7 +34665,7 @@ Index
* delete debugger command: Breakpoint Control. (line 64)
* delete statement: Delete. (line 6)
* delete watchpoint: Viewing And Changing Data.
- (line 83)
+ (line 88)
* deleting elements in arrays: Delete. (line 6)
* deleting entire arrays: Delete. (line 39)
* Demaille, Akim: Acknowledgments. (line 60)
@@ -35884,7 +35889,7 @@ Index
* output, records: Output Separators. (line 20)
* output, standard: Special FD. (line 6)
* p debugger command (alias for print): Viewing And Changing Data.
- (line 35)
+ (line 40)
* package, definition of: Global Namespace. (line 18)
* Papadopoulos, Panos: Contributors. (line 131)
* parent process ID of gawk process: Auto-set. (line 251)
@@ -36028,7 +36033,7 @@ Index
* pretty printing <1>: Profiling. (line 222)
* pretty-printing, profiling, difference with: Profiling. (line 229)
* print debugger command: Viewing And Changing Data.
- (line 35)
+ (line 40)
* print statement: Printing. (line 16)
* print statement, BEGIN/END patterns and: I/O And BEGIN/END. (line 15)
* print statement, commas, omitting: Print Examples. (line 30)
@@ -36039,9 +36044,9 @@ Index
(line 17)
* print statement, sprintf() function and: Round Function. (line 6)
* print variables, in debugger: Viewing And Changing Data.
- (line 35)
+ (line 40)
* printf debugger command: Viewing And Changing Data.
- (line 53)
+ (line 58)
* printf statement: Printing. (line 16)
* printf statement <1>: Printf. (line 6)
* printf statement, columns, aligning: Print Examples. (line 69)
@@ -36342,10 +36347,10 @@ Index
* separators, subscript: User-modified. (line 149)
* set breakpoint: Breakpoint Control. (line 11)
* set debugger command: Viewing And Changing Data.
- (line 58)
+ (line 63)
* set directory of message catalogs: I18N Functions. (line 11)
* set watchpoint: Viewing And Changing Data.
- (line 66)
+ (line 71)
* shadowing of variable values: Definition Syntax. (line 77)
* shell quoting, rules for: Quoting. (line 6)
* shells, piping commands into: Redirection. (line 136)
@@ -36504,7 +36509,7 @@ Index
* stepi debugger command: Debugger Execution Control.
(line 75)
* stop automatic display, in debugger: Viewing And Changing Data.
- (line 79)
+ (line 84)
* stream editors: Full Line Fields. (line 22)
* stream editors <1>: Simple Sed. (line 6)
* strftime: Time Functions. (line 50)
@@ -36674,7 +36679,7 @@ Index
(line 29)
* underscore (_), translatable string: Programmer i18n. (line 69)
* undisplay debugger command: Viewing And Changing Data.
- (line 79)
+ (line 84)
* undocumented features: Undocumented. (line 6)
* Unicode: Ordinal Functions. (line 45)
* Unicode <1>: Ranges and Locales. (line 61)
@@ -36695,7 +36700,7 @@ Index
* until debugger command: Debugger Execution Control.
(line 82)
* unwatch debugger command: Viewing And Changing Data.
- (line 83)
+ (line 88)
* up debugger command: Execution Stack. (line 36)
* uppercase names, namespace for: Default Namespace. (line 10)
* user database, reading: Passwd Functions. (line 6)
@@ -36756,7 +36761,7 @@ Index
* vertical bar (|), || operator <1>: Precedence. (line 88)
* Vinschen, Corinna: Acknowledgments. (line 60)
* w debugger command (alias for watch): Viewing And Changing Data.
- (line 66)
+ (line 71)
* w utility: Fixed width data. (line 17)
* wait() extension function: Extension Sample Fork.
(line 22)
@@ -36768,7 +36773,7 @@ Index
* Wallin, Anders: Contributors. (line 106)
* warnings, issuing: Options. (line 210)
* watch debugger command: Viewing And Changing Data.
- (line 66)
+ (line 71)
* watchpoint (debugger): Debugging Terms. (line 42)
* wc utility: Wc Program. (line 6)
* wc.awk program: Wc Program. (line 46)
@@ -37209,198 +37214,198 @@ Node: List of Debugger Commands895922
Node: Breakpoint Control897255
Node: Debugger Execution Control900949
Node: Viewing And Changing Data904311
-Node: Execution Stack907685
-Node: Debugger Info909322
-Node: Miscellaneous Debugger Commands913393
-Node: Readline Support918455
-Node: Limitations919351
-Node: Debugging Summary921460
-Node: Namespaces922739
-Node: Global Namespace923818
-Node: Qualified Names925216
-Node: Default Namespace926215
-Node: Changing The Namespace926956
-Node: Naming Rules928570
-Node: Internal Name Management930418
-Node: Namespace Example931460
-Node: Namespace And Features934022
-Node: Namespace Summary935457
-Node: Arbitrary Precision Arithmetic936934
-Node: Computer Arithmetic938421
-Ref: table-numeric-ranges942187
-Ref: table-floating-point-ranges942680
-Ref: Computer Arithmetic-Footnote-1943338
-Node: Math Definitions943395
-Ref: table-ieee-formats946711
-Ref: Math Definitions-Footnote-1947314
-Node: MPFR features947419
-Node: FP Math Caution949137
-Ref: FP Math Caution-Footnote-1950209
-Node: Inexactness of computations950578
-Node: Inexact representation951538
-Node: Comparing FP Values952898
-Node: Errors accumulate954139
-Node: Getting Accuracy955572
-Node: Try To Round958282
-Node: Setting precision959181
-Ref: table-predefined-precision-strings959878
-Node: Setting the rounding mode961708
-Ref: table-gawk-rounding-modes962082
-Ref: Setting the rounding mode-Footnote-1966013
-Node: Arbitrary Precision Integers966192
-Ref: Arbitrary Precision Integers-Footnote-1969367
-Node: Checking for MPFR969516
-Node: POSIX Floating Point Problems970990
-Ref: POSIX Floating Point Problems-Footnote-1975275
-Node: Floating point summary975313
-Node: Dynamic Extensions977503
-Node: Extension Intro979056
-Node: Plugin License980322
-Node: Extension Mechanism Outline981119
-Ref: figure-load-extension981558
-Ref: figure-register-new-function983123
-Ref: figure-call-new-function984215
-Node: Extension API Description986277
-Node: Extension API Functions Introduction987919
-Ref: table-api-std-headers989755
-Node: General Data Types993620
-Ref: General Data Types-Footnote-11001981
-Node: Memory Allocation Functions1002280
-Ref: Memory Allocation Functions-Footnote-11006490
-Node: Constructor Functions1006589
-Node: Registration Functions1010175
-Node: Extension Functions1010860
-Node: Exit Callback Functions1016182
-Node: Extension Version String1017432
-Node: Input Parsers1018095
-Node: Output Wrappers1030816
-Node: Two-way processors1035328
-Node: Printing Messages1037593
-Ref: Printing Messages-Footnote-11038764
-Node: Updating ERRNO1038917
-Node: Requesting Values1039656
-Ref: table-value-types-returned1040393
-Node: Accessing Parameters1041329
-Node: Symbol Table Access1042564
-Node: Symbol table by name1043076
-Ref: Symbol table by name-Footnote-11046100
-Node: Symbol table by cookie1046228
-Ref: Symbol table by cookie-Footnote-11050413
-Node: Cached values1050477
-Ref: Cached values-Footnote-11054013
-Node: Array Manipulation1054166
-Ref: Array Manipulation-Footnote-11055257
-Node: Array Data Types1055294
-Ref: Array Data Types-Footnote-11057952
-Node: Array Functions1058044
-Node: Flattening Arrays1062542
-Node: Creating Arrays1069518
-Node: Redirection API1074285
-Node: Extension API Variables1077118
-Node: Extension Versioning1077829
-Ref: gawk-api-version1078258
-Node: Extension GMP/MPFR Versioning1079989
-Node: Extension API Informational Variables1081617
-Node: Extension API Boilerplate1082690
-Node: Changes from API V11086664
-Node: Finding Extensions1088236
-Node: Extension Example1088795
-Node: Internal File Description1089593
-Node: Internal File Ops1093673
-Ref: Internal File Ops-Footnote-11105023
-Node: Using Internal File Ops1105163
-Ref: Using Internal File Ops-Footnote-11107546
-Node: Extension Samples1107820
-Node: Extension Sample File Functions1109349
-Node: Extension Sample Fnmatch1116998
-Node: Extension Sample Fork1118485
-Node: Extension Sample Inplace1119703
-Node: Extension Sample Ord1123007
-Node: Extension Sample Readdir1123843
-Ref: table-readdir-file-types1124732
-Node: Extension Sample Revout1125537
-Node: Extension Sample Rev2way1126126
-Node: Extension Sample Read write array1126866
-Node: Extension Sample Readfile1128808
-Node: Extension Sample Time1129903
-Node: Extension Sample API Tests1131251
-Node: gawkextlib1131743
-Node: Extension summary1134661
-Node: Extension Exercises1138363
-Node: Language History1139605
-Node: V7/SVR3.11141261
-Node: SVR41143413
-Node: POSIX1144847
-Node: BTL1146227
-Node: POSIX/GNU1146956
-Node: Feature History1152734
-Node: Common Extensions1168780
-Node: Ranges and Locales1170063
-Ref: Ranges and Locales-Footnote-11174679
-Ref: Ranges and Locales-Footnote-21174706
-Ref: Ranges and Locales-Footnote-31174941
-Node: Contributors1175162
-Node: History summary1181107
-Node: Installation1182487
-Node: Gawk Distribution1183431
-Node: Getting1183915
-Node: Extracting1184878
-Node: Distribution contents1186516
-Node: Unix Installation1192996
-Node: Quick Installation1193678
-Node: Shell Startup Files1196092
-Node: Additional Configuration Options1197181
-Node: Configuration Philosophy1199346
-Node: Non-Unix Installation1201715
-Node: PC Installation1202175
-Node: PC Binary Installation1203013
-Node: PC Compiling1203448
-Node: PC Using1204565
-Node: Cygwin1208118
-Node: MSYS1209217
-Node: VMS Installation1209718
-Node: VMS Compilation1210509
-Ref: VMS Compilation-Footnote-11211738
-Node: VMS Dynamic Extensions1211796
-Node: VMS Installation Details1213481
-Node: VMS Running1215734
-Node: VMS GNV1220013
-Node: VMS Old Gawk1220748
-Node: Bugs1221219
-Node: Bug address1221882
-Node: Usenet1224864
-Node: Maintainers1225868
-Node: Other Versions1227129
-Node: Installation summary1234043
-Node: Notes1235245
-Node: Compatibility Mode1236039
-Node: Additions1236821
-Node: Accessing The Source1237746
-Node: Adding Code1239183
-Node: New Ports1245402
-Node: Derived Files1249890
-Ref: Derived Files-Footnote-11255536
-Ref: Derived Files-Footnote-21255571
-Ref: Derived Files-Footnote-31256169
-Node: Future Extensions1256283
-Node: Implementation Limitations1256941
-Node: Extension Design1258124
-Node: Old Extension Problems1259268
-Ref: Old Extension Problems-Footnote-11260786
-Node: Extension New Mechanism Goals1260843
-Ref: Extension New Mechanism Goals-Footnote-11264207
-Node: Extension Other Design Decisions1264396
-Node: Extension Future Growth1266509
-Node: Notes summary1267345
-Node: Basic Concepts1268520
-Node: Basic High Level1269201
-Ref: figure-general-flow1269483
-Ref: figure-process-flow1270168
-Ref: Basic High Level-Footnote-11273469
-Node: Basic Data Typing1273654
-Node: Glossary1276982
-Node: Copying1308820
-Node: GNU Free Documentation License1346363
-Node: Index1371483
+Node: Execution Stack907921
+Node: Debugger Info909558
+Node: Miscellaneous Debugger Commands913629
+Node: Readline Support918691
+Node: Limitations919587
+Node: Debugging Summary921696
+Node: Namespaces922975
+Node: Global Namespace924054
+Node: Qualified Names925452
+Node: Default Namespace926451
+Node: Changing The Namespace927192
+Node: Naming Rules928806
+Node: Internal Name Management930654
+Node: Namespace Example931696
+Node: Namespace And Features934258
+Node: Namespace Summary935693
+Node: Arbitrary Precision Arithmetic937170
+Node: Computer Arithmetic938657
+Ref: table-numeric-ranges942423
+Ref: table-floating-point-ranges942916
+Ref: Computer Arithmetic-Footnote-1943574
+Node: Math Definitions943631
+Ref: table-ieee-formats946947
+Ref: Math Definitions-Footnote-1947550
+Node: MPFR features947655
+Node: FP Math Caution949373
+Ref: FP Math Caution-Footnote-1950445
+Node: Inexactness of computations950814
+Node: Inexact representation951774
+Node: Comparing FP Values953134
+Node: Errors accumulate954375
+Node: Getting Accuracy955808
+Node: Try To Round958518
+Node: Setting precision959417
+Ref: table-predefined-precision-strings960114
+Node: Setting the rounding mode961944
+Ref: table-gawk-rounding-modes962318
+Ref: Setting the rounding mode-Footnote-1966249
+Node: Arbitrary Precision Integers966428
+Ref: Arbitrary Precision Integers-Footnote-1969603
+Node: Checking for MPFR969752
+Node: POSIX Floating Point Problems971226
+Ref: POSIX Floating Point Problems-Footnote-1975511
+Node: Floating point summary975549
+Node: Dynamic Extensions977739
+Node: Extension Intro979292
+Node: Plugin License980558
+Node: Extension Mechanism Outline981355
+Ref: figure-load-extension981794
+Ref: figure-register-new-function983359
+Ref: figure-call-new-function984451
+Node: Extension API Description986513
+Node: Extension API Functions Introduction988155
+Ref: table-api-std-headers989991
+Node: General Data Types993856
+Ref: General Data Types-Footnote-11002217
+Node: Memory Allocation Functions1002516
+Ref: Memory Allocation Functions-Footnote-11006726
+Node: Constructor Functions1006825
+Node: Registration Functions1010411
+Node: Extension Functions1011096
+Node: Exit Callback Functions1016418
+Node: Extension Version String1017668
+Node: Input Parsers1018331
+Node: Output Wrappers1031052
+Node: Two-way processors1035564
+Node: Printing Messages1037829
+Ref: Printing Messages-Footnote-11039000
+Node: Updating ERRNO1039153
+Node: Requesting Values1039892
+Ref: table-value-types-returned1040629
+Node: Accessing Parameters1041565
+Node: Symbol Table Access1042800
+Node: Symbol table by name1043312
+Ref: Symbol table by name-Footnote-11046336
+Node: Symbol table by cookie1046464
+Ref: Symbol table by cookie-Footnote-11050649
+Node: Cached values1050713
+Ref: Cached values-Footnote-11054249
+Node: Array Manipulation1054402
+Ref: Array Manipulation-Footnote-11055493
+Node: Array Data Types1055530
+Ref: Array Data Types-Footnote-11058188
+Node: Array Functions1058280
+Node: Flattening Arrays1062778
+Node: Creating Arrays1069754
+Node: Redirection API1074521
+Node: Extension API Variables1077354
+Node: Extension Versioning1078065
+Ref: gawk-api-version1078494
+Node: Extension GMP/MPFR Versioning1080225
+Node: Extension API Informational Variables1081853
+Node: Extension API Boilerplate1082926
+Node: Changes from API V11086900
+Node: Finding Extensions1088472
+Node: Extension Example1089031
+Node: Internal File Description1089829
+Node: Internal File Ops1093909
+Ref: Internal File Ops-Footnote-11105259
+Node: Using Internal File Ops1105399
+Ref: Using Internal File Ops-Footnote-11107782
+Node: Extension Samples1108056
+Node: Extension Sample File Functions1109585
+Node: Extension Sample Fnmatch1117234
+Node: Extension Sample Fork1118721
+Node: Extension Sample Inplace1119939
+Node: Extension Sample Ord1123243
+Node: Extension Sample Readdir1124079
+Ref: table-readdir-file-types1124968
+Node: Extension Sample Revout1125773
+Node: Extension Sample Rev2way1126362
+Node: Extension Sample Read write array1127102
+Node: Extension Sample Readfile1129044
+Node: Extension Sample Time1130139
+Node: Extension Sample API Tests1131487
+Node: gawkextlib1131979
+Node: Extension summary1134897
+Node: Extension Exercises1138599
+Node: Language History1139841
+Node: V7/SVR3.11141497
+Node: SVR41143649
+Node: POSIX1145083
+Node: BTL1146463
+Node: POSIX/GNU1147192
+Node: Feature History1152970
+Node: Common Extensions1169016
+Node: Ranges and Locales1170299
+Ref: Ranges and Locales-Footnote-11174915
+Ref: Ranges and Locales-Footnote-21174942
+Ref: Ranges and Locales-Footnote-31175177
+Node: Contributors1175398
+Node: History summary1181343
+Node: Installation1182723
+Node: Gawk Distribution1183667
+Node: Getting1184151
+Node: Extracting1185114
+Node: Distribution contents1186752
+Node: Unix Installation1193232
+Node: Quick Installation1193914
+Node: Shell Startup Files1196328
+Node: Additional Configuration Options1197417
+Node: Configuration Philosophy1199582
+Node: Non-Unix Installation1201951
+Node: PC Installation1202411
+Node: PC Binary Installation1203249
+Node: PC Compiling1203684
+Node: PC Using1204801
+Node: Cygwin1208354
+Node: MSYS1209453
+Node: VMS Installation1209954
+Node: VMS Compilation1210745
+Ref: VMS Compilation-Footnote-11211974
+Node: VMS Dynamic Extensions1212032
+Node: VMS Installation Details1213717
+Node: VMS Running1215970
+Node: VMS GNV1220249
+Node: VMS Old Gawk1220984
+Node: Bugs1221455
+Node: Bug address1222118
+Node: Usenet1225100
+Node: Maintainers1226104
+Node: Other Versions1227365
+Node: Installation summary1234279
+Node: Notes1235481
+Node: Compatibility Mode1236275
+Node: Additions1237057
+Node: Accessing The Source1237982
+Node: Adding Code1239419
+Node: New Ports1245638
+Node: Derived Files1250126
+Ref: Derived Files-Footnote-11255772
+Ref: Derived Files-Footnote-21255807
+Ref: Derived Files-Footnote-31256405
+Node: Future Extensions1256519
+Node: Implementation Limitations1257177
+Node: Extension Design1258360
+Node: Old Extension Problems1259504
+Ref: Old Extension Problems-Footnote-11261022
+Node: Extension New Mechanism Goals1261079
+Ref: Extension New Mechanism Goals-Footnote-11264443
+Node: Extension Other Design Decisions1264632
+Node: Extension Future Growth1266745
+Node: Notes summary1267581
+Node: Basic Concepts1268756
+Node: Basic High Level1269437
+Ref: figure-general-flow1269719
+Ref: figure-process-flow1270404
+Ref: Basic High Level-Footnote-11273705
+Node: Basic Data Typing1273890
+Node: Glossary1277218
+Node: Copying1309056
+Node: GNU Free Documentation License1346599
+Node: Index1371719

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 27a6fc4c..b0b4d3d0 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -31131,6 +31131,12 @@ Evaluate @var{awk statements} in the context of the running program.
You can do anything that an @command{awk} program would do: assign
values to variables, call functions, and so on.
+@quotation NOTE
+Do to implementation constraintss, using @code{eval} to call a
+user-defined function that returns a value does not work, generating
+an error message. We hope to one day remove this constraint.
+@end quotation
+
@item @code{eval} @var{param}, @dots{}
@itemx @var{awk statements}
@itemx @code{end}
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 51b56187..3f514c82 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -30143,6 +30143,12 @@ Evaluate @var{awk statements} in the context of the running program.
You can do anything that an @command{awk} program would do: assign
values to variables, call functions, and so on.
+@quotation NOTE
+Do to implementation constraintss, using @code{eval} to call a
+user-defined function that returns a value does not work, generating
+an error message. We hope to one day remove this constraint.
+@end quotation
+
@item @code{eval} @var{param}, @dots{}
@itemx @var{awk statements}
@itemx @code{end}