3
0
mirror of https://github.com/pragma-/pbot.git synced 2024-12-28 21:52:35 +01:00
Commit Graph

369 Commits

Author SHA1 Message Date
Pragmatic Software
0b941bf771 CGrammar: Anchor reserved rule to prevent prefix matching 2014-06-21 02:01:38 +00:00
Pragmatic Software
1e2caf2bea CGrammar: Er, *correctly* change parameter declarations from "int i" to "i as int" 2014-06-21 01:40:55 +00:00
Pragmatic Software
f137294429 CGrammar: Change parameter declarations from "int i" to "i as int" 2014-06-21 01:36:24 +00:00
Pragmatic Software
c18af75b63 CGrammar: Fix functions taking function pointer as parameter 2014-06-20 23:16:04 +00:00
Pragmatic Software
a501557d35 CGrammar: Support long long suffix on constants; add .0 to floating pointer constants when omitted 2014-06-20 09:12:56 +00:00
Pragmatic Software
d7197b6bf6 CGrammar: Replace "constant" with "const" since "constant" has a specific meaning in the C standard 2014-06-20 08:25:15 +00:00
Pragmatic Software
3f545cefdc CGrammar: Fix arrays of function pointers and function pointers returning pointers 2014-06-20 08:05:36 +00:00
Pragmatic Software
476db3d6a9 CGrammar: Several improvements in declarations; progress on pointers to functions 2014-06-20 07:43:06 +00:00
Pragmatic Software
1272de61fa CGrammar: Fix preproc conditionals 2014-06-19 05:16:46 +00:00
Pragmatic Software
f898580d33 CGrammar: Fix int const i to translate to constant int i instead of int constant i 2014-06-18 22:31:56 +00:00
Pragmatic Software
7590644422 CGrammar: Improve conditional operator translation 2014-06-18 01:08:19 +00:00
Pragmatic Software
8f5e4c9e88 CGrammar: change "pointer to a" to "pointer to" 2014-06-18 00:20:43 +00:00
Pragmatic Software
987de3f38c CGrammar: Oops, pointers are read right-to-left -- fixed const pointers again 2014-06-18 00:14:16 +00:00
Pragmatic Software
861f095829 CGrammar: Fix const pointers 2014-06-17 23:51:55 +00:00
Pragmatic Software
dfb7ca0abd CGrammar: Move bit-field to declarator so they can be declared in lists like int a[5], b:5 2014-06-17 23:33:34 +00:00
Pragmatic Software
b2a0963abb CGrammar: Improve array translation and fix pointer pluralization 2014-06-17 23:12:02 +00:00
Pragmatic Software
77f1005e03 CGrammar: Fix struct member declarations, pluralize "pointers to" when applicable 2014-06-17 18:20:13 +00:00
Pragmatic Software
c40fd81bb0 CGrammar: Add dash between bitwise operators, .e.g. "bitwise ORed" becomes "bitwise-ORed" 2014-06-16 21:23:19 +00:00
Pragmatic Software
b0ce2d422e CGrammar: Improve structures and constant literals 2014-06-16 21:13:30 +00:00
Pragmatic Software
c205d348e7 CGrammar: Significantly improve postfix expressions, remove basics objects 2014-06-16 02:31:13 +00:00
Pragmatic Software
78419de052 CGrammar: Improve logic of precompiling grammar 2014-06-15 15:42:20 +00:00
Pragmatic Software
7f84708a5e CGrammar: add support for precompiling grammar 2014-06-15 04:28:54 +00:00
Pragmatic Software
9389edd2df CGrammar: Optimize postfix_expression rule and fix function definitions 2014-06-15 03:57:27 +00:00
Pragmatic Software
2dba87f453 CGrammar: Optimize preproc rules 2014-06-15 01:09:06 +00:00
Pragmatic Software
632a9582d5 CGrammar: Improve and optimize conditional_expression rule; improve translation of parenthetical expressions 2014-06-15 00:46:49 +00:00
Pragmatic Software
bf9586b6a8 CGrammar: Improve labels and goto 2014-06-14 19:13:53 +00:00
Pragmatic Software
392cbfb5d1 CGrammar: Improve switch/case/break/label 2014-06-14 18:41:55 +00:00
Pragmatic Software
c2b4d5cb19 CGrammar: Now parses int *a[10] and int (*a)[10] and such 2014-06-14 17:54:20 +00:00
Pragmatic Software
9597833b32 CGrammar: Function prototypes can appear in delcaration section 2014-06-12 14:19:39 +00:00
Pragmatic Software
0f5dbeda7a CGrammar: Improve chained assignment 2014-06-12 13:23:03 +00:00
Pragmatic Software
c6e893a4fa CGrammar: Improve arrays and fix array initialization 2014-06-12 13:13:45 +00:00
Pragmatic Software
e29bd99b42 CGrammar: Improve casting, for/do loops and assignment from function result 2014-06-12 12:23:16 +00:00
Pragmatic Software
df1fa14b2a CGrammar: Fix array translation text 2014-06-11 12:50:16 +00:00
Pragmatic Software
026db04e4a CGrammar: Remove some redundant returns 2014-06-11 08:54:12 +00:00
Pragmatic Software
992dae043f CGrammar: Fix /* comment */ regex, minor improvement to while loop, need to fix arrays 2014-06-11 08:29:58 +00:00
Pragmatic Software
5c8b845e6d CGrammar: Fix character-literal and string-literal regexs; add more character-literal constants 2014-06-11 07:42:16 +00:00
Pragmatic Software
d8703faf0e CGrammar: Fix #elif and function prototypes 2014-06-10 21:12:09 +00:00
Pragmatic Software
27dd491fe6 CGrammar: Improve initializations 2014-06-10 17:01:43 +00:00
Pragmatic Software
83d0d862f5 c2english.pl: Improve code parsing/function extraction 2014-06-10 14:29:16 +00:00
Pragmatic Software
929d9368fe CGrammar: Fix function call results and improve character constants 2014-06-10 08:50:19 +00:00
Pragmatic Software
c4fd8a964f CGrammar: Fix preprocessor and improve for-loops 2014-06-10 06:05:14 +00:00
Pragmatic Software
9992119b11 CGrammar: Improve enumeration translation 2014-06-09 10:18:26 +00:00
Pragmatic Software
ffab2c6f3b CGrammar: fix enumerations, improve for-loops and comma operators 2014-06-09 10:00:13 +00:00
Pragmatic Software
ec1fd207a6 CGrammar: fix conditional statement, improve structures and do-while loop 2014-06-08 15:59:43 +00:00
Pragmatic Software
6641bc3cf2 More progress on CGrammar.pm 2014-06-08 13:51:29 +00:00
Pragmatic Software
ca91e34a25 CGrammar: Significantly improve indentation; minor textual improvements 2014-06-08 06:34:55 +00:00
Pragmatic Software
8e818baa52 Rename global_var_declaration to external_declaration 2014-06-07 13:02:50 +00:00
Pragmatic Software
730120be36 Rough-draft work-in-progress alpha of new C-to-English module 2014-06-07 13:00:07 +00:00
Pragmatic Software
6740522fae Improve cdecl usage message 2014-06-05 21:45:25 +00:00
Pragmatic Software
a6b66cb351 Add rpn module 2014-06-04 00:21:48 +00:00
Pragmatic Software
2cb5d60b51 compiler_vm: Convert exit code from octal to decimal; add variables to easily change opening/closing brackets; experiment with using whitespace instead of <> 2014-05-31 16:36:37 +00:00
Pragmatic Software
0302a5328a compiler_vm: Add Win32 named-pipe TCP proxy program 2014-05-31 01:24:22 +00:00
Pragmatic Software
62e11d0b5d compiler_vm: add Win32 VirtualBox server; misc improvements 2014-05-31 01:20:31 +00:00
Pragmatic Software
ae1842e3db compiler_vm: Improve a couple of output sanitization regexs 2014-05-08 13:07:24 +00:00
Pragmatic Software
af447c2614 More nickometer tweaks 2014-05-02 03:57:19 +00:00
Pragmatic Software
8e07eb300e compiler_vm: add -Wshadow; support -include 2014-05-02 00:43:42 +00:00
Pragmatic Software
c1fa37f982 Tweaks to nickometer module 2014-05-01 23:20:15 +00:00
Pragmatic Software
a0b0cb8a74 Add nickometer module 2014-05-01 03:40:56 +00:00
Pragmatic Software
cebcafba70 Do not allow RE2 to fallback to PCRE 2014-04-29 17:00:51 +00:00
Pragmatic Software
595e6a34d2 Use DFA regex engine on user-supplied regexs to avoid potential denial-of-service attacks 2014-04-28 17:20:01 +00:00
Pragmatic Software
96c57d80e5 Minor updates to various modules 2014-04-26 15:22:46 +00:00
Pragmatic Software
76cd4965f1 compiler_vm: allow ()'s around function identifiers; e.g. int (main)(void) {} 2014-04-26 15:17:11 +00:00
Pragmatic Software
fc1e372908 Update C-Faq module to use latest questions and links 2014-04-22 15:10:10 +00:00
Pragmatic Software
08e300bd54 compiler_vm: bump "Same output" length case to 22 to allow repetitions of "Success (no output)" 2014-04-07 07:24:14 +00:00
Pragmatic Software
f347c6d1e3 Update man.pl to use newer manpage, and minor formatting fixes 2014-04-07 05:12:00 +00:00
Pragmatic Software
736056b586 compiler_vm: Don't display "Same output" unless length of output is greater than 10 characters 2014-04-03 07:54:35 +00:00
Pragmatic Software
8a7c539e0f compiler_vm: print "Same output" only if same output is within 10 minutes of last snippet otherwise print actual output again 2014-04-03 07:47:19 +00:00
Pragmatic Software
b2544d9d5a compiler_vm: remember last output per channel and print "Same output." if the current output matches the last output 2014-04-02 23:48:43 +00:00
Pragmatic Software
1ec463f021 compiler_vm: Remember last keyword when chaining together "and" statements in editor
This allows the more natural "replace 'a' with 'b' and 'c' with 'd'" syntax
rather than the previous syntax of "replace 'a' with 'b' and replace 'c' with 'd'"
2014-04-02 00:23:14 +00:00
Pragmatic Software
474f7ed168 Remove compiler_vm ability to execute .gdbinit commands 2014-03-24 15:37:54 +00:00
Pragmatic Software
f13adc1500 Fix derp in math.pl 2014-03-24 03:10:08 +00:00
Pragmatic Software
cb6d811ba2 Minor improvements to math.pl 2014-03-24 03:05:48 +00:00
Pragmatic Software
2a933bff87 Improve math.pl to support specific math functions (e.g., sqrt, etc) 2014-03-24 02:25:37 +00:00
Pragmatic Software
ee3fddf1eb expand_macros.pl doesn't require a nick argument any longer, correct ARGV count 2014-03-22 18:52:54 +00:00
Pragmatic Software
bff786666e compiler_vm: Add more standard headers to default set of includes 2014-03-06 21:52:44 +00:00
Pragmatic Software
bc261e0965 compiler_vm: Add ability to show/diff/copy another channel's snippet 2014-03-05 19:58:46 +00:00
Pragmatic Software
a5ae7478e1 compiler_vm: Add $channel argument to separate snippet history into per-channel/nick files 2014-03-04 21:40:51 +00:00
Pragmatic Software
818ad29914 Remove need to pass nick as command-line parameter to expand/paren modules (use add_nick factoid metadata) 2014-03-04 10:43:28 +00:00
Pragmatic Software
f4275a4cc8 compiler_vm: more compiler output beautification 2014-03-01 20:25:42 +00:00
Pragmatic Software
4d0e23243b compiler_vm: minor beautification of compiler diagnostic output 2014-03-01 14:42:08 +00:00
Pragmatic Software
80a7a82221 Remove extranous flushall from compiler watchdog 2014-02-28 07:52:28 +00:00
Pragmatic Software
e72a8c04a2 Remove use of compiler output merger 2014-02-28 07:48:27 +00:00
Pragmatic Software
7a99175bd7 compiler_vm updates
- make compiler_output_merger.pl more resistant to being killed
  - support gcc 4.9.0's -fdiagnostics-show-caret 
    (disable in channel, enable in paste)
  - force a newline to be added to program output to prevent output
    from being buffered by output merger
2014-02-27 16:31:31 +00:00
Pragmatic Software
aa00540c8d compiler_vm: Hack to ensure gdb and prog streams are output in the correct order 2014-02-25 11:49:21 +00:00
Pragmatic Software
d66d3d2a31 compiler_vm: Add constants to easily customize time-out and nographic options in compiler_server.pl 2014-02-25 11:47:57 +00:00
Pragmatic Software
0b2b18d93a compiler_vm: separate program output and gdb output in watchdog to prevent crossing the streams 2014-02-25 05:40:44 +00:00
Pragmatic Software
f6edfce6b4 compiler_vm: Use random fortune instead of Ipsum for default input 2014-02-24 07:25:50 +00:00
Pragmatic Software
7388bf9cfc Add heartbeat logic to compiler server to detect when vm is booted (prevents unnecessary vm restarts) 2014-02-23 00:56:51 +00:00
Pragmatic Software
38fb275234 Fix error message for bad search term within paragraph in c99std/c11std 2014-02-22 02:42:25 +00:00
Pragmatic Software
29316b23ba Update c2english with -f force option, and hide certain errors 2014-02-05 01:13:16 +00:00
Pragmatic Software
0f2616a552 Update paren module to handle ternary conditional operator 2013-12-23 08:48:24 +00:00
Pragmatic Software
8adc766dc4 Improve paren/prec module 2013-12-01 13:36:21 +00:00
Pragmatic Software
9c1a077d2e Allow expand_macros.pl to #include stuff to expand 2013-11-28 05:36:41 +00:00
Pragmatic Software
b042e073db Remove #include from expand_macros.pl input 2013-11-28 05:25:54 +00:00
Pragmatic Software
2323bb89bb Add expand_macros.pl module 2013-11-28 05:11:54 +00:00
Pragmatic Software
de89ca61a2 Add n1256.out and n1570.out 2013-11-18 15:00:14 +00:00
Pragmatic Software
ac6d913290 Update parens.py with edk's simplification of parentheses verbosity logic 2013-11-14 17:33:11 +00:00
Pragmatic Software
936d45e04e Improve verbosity of parenthesized precedence in parens module 2013-11-14 15:21:52 +00:00
Pragmatic Software
805215ce81 Add paren.py module (shows precedence of expressions by adding parentheses)
TODO: Add 'show_nick' factoid/module key so nickname logic doesn't need to be
      added to module sources
2013-11-14 06:29:22 +00:00
Pragmatic Software
b7b9ce76ca Fix potential infinite loop due to not restoring pos value after regex 2013-10-25 07:33:43 +00:00
Pragmatic Software
111847340e Make c2english output slightly more clean 2013-10-19 18:42:05 +00:00
Pragmatic Software
c6e67200c1 Run code through gcc for syntax checking before attempting to parse to english 2013-10-19 17:56:43 +00:00
Pragmatic Software
32385ec691 Fix wrong quote-type for #include derp 2013-10-12 16:35:23 +00:00
Pragmatic Software
174e7f71e4 Fix issues with quoted literals and #include statement 2013-10-11 14:50:29 +00:00
Pragmatic Software
272e13236f Preserve empty lines in source 2013-10-07 05:03:03 +00:00
Pragmatic Software
dc1390fca2 Improve formatting 2013-09-16 10:35:32 +00:00
Pragmatic Software
d739415a29 Fix show/undo/replace/etc (need args stripped first); undo once again updates last-code record 2013-09-13 11:32:15 +00:00
Pragmatic Software
2720071dbd compiler_vm:
Add compiler flags section to web-pasted output
  Clean up output section in web-pasted output
  Save cc-specific flags (-paste, -nomain, etc) to last-code
2013-09-13 11:03:50 +00:00
Pragmatic Software
8d882a4240 compiler_vm: -paste and -nomain arguments no longer need to be first arguments; fix issue with replace command 2013-09-13 09:29:24 +00:00
Pragmatic Software
a6a3129171 Preserve comments in code/paste 2013-08-27 12:49:14 +00:00
Pragmatic Software
522b9770dd compiler_vm:
Fix comment stripping logic regarding C89 comments versus C99 comments in code like `int i = 10 //**/ 2\n;`
  Code history now includes argument flags
  Improved regex parsing of diff tags
2013-08-27 00:42:17 +00:00
Pragmatic Software
4adedc2a90 Show "No difference." when code is the same in cc diff 2013-08-24 15:01:31 +00:00
Pragmatic Software
cb74a9be1e Improved matching of tags in cc diff to be less greedy 2013-08-23 22:26:32 +00:00
Pragmatic Software
e6ae49fd4f Improve handling of spaces in cc diff 2013-08-23 18:26:43 +00:00
Pragmatic Software
36e48cb703 Added cc diff command 2013-08-22 20:41:54 +00:00
Pragmatic Software
0e783365d1 Misc updates to modules/compiler_vm 2013-08-16 17:28:17 +00:00
Pragmatic Software
2a62729fcc Fix potential infinite loop in "replace all"; show line numbers in diagnostics if using "-paste"; other misc fixes 2013-06-17 22:25:05 +00:00
Pragmatic Software
8d6c2587a8 Show number of matching quotes only if more than one match 2013-06-09 00:04:20 +00:00
Pragmatic Software
8586038f03 Misc updates 2013-06-03 17:04:24 +00:00
Pragmatic Software
f512efd6cc Update get_title.pl to use Levenshtein matching on URLs/titles in order to avoid displaying titles that are similiar to URLs 2013-06-03 17:02:58 +00:00
Pragmatic Software
dc52430044 Add SSL support, and other misc updates 2013-02-25 02:27:24 +00:00
Pragmatic Software
57166ff734 compiler_vm: Handle --version flag 2013-02-05 11:14:19 +00:00
Pragmatic Software
3d492ed76b Allow function argument list to be empty; e.g., int main() { code } 2013-02-01 23:35:11 +00:00
Pragmatic Software
e846f24716 Rename -naked to -nomain; fix issue with function prototypes 2012-12-30 08:14:27 +00:00
Pragmatic Software
9205736b3f Don't add {}'s around single statements following if/for/etc; add -naked flag to prevent wrapping code with a main function 2012-12-29 16:19:51 +00:00
Pragmatic Software
e93ac26062 compiler_vm: Warn about #defines not terminated with \n 2012-11-21 19:01:10 +00:00
Pragmatic Software
d5e5f2c728 Reposition * character in function regex to be consistent 2012-11-19 15:57:54 +00:00
Pragmatic Software
c8d77ed230 Replace A-Z0-9_ in function regex with \w to slightly improve readability 2012-11-19 15:52:07 +00:00
Pragmatic Software
a6a2b3eeb3 Minor clean-up of previous commit to remove unnecessary substitutions 2012-11-19 15:45:13 +00:00
Pragmatic Software
1d7791d9a5 compiler_vm: Improve extraction of function parameters containing parentheses 2012-11-18 19:18:56 +00:00
Pragmatic Software
3f771df8bc compiler_vm: added -paste flag to send formatted source/output to paste site and show link instead of output; e.g. cc -paste <code> --> http://somepastesite.com 2012-11-14 18:36:04 +00:00
Pragmatic Software
b8d2d0797e compiler_vm: Show output from program when using paste command
google search: Show "No results found" if no results found
c99std/c11std: Minor clean-up of output
2012-11-02 22:08:20 +00:00
Pragmatic Software
f16dedf680 compiler_vm: add script to mount/umount qcow2 for editing 2012-10-24 12:29:00 +00:00
Pragmatic Software
4602c3b732 compiler_vm: Pass host date to guest
Replace "Killed" with "[Killed]"
             Don't print empty '' after unprintable char values
             Set default language in compiler_client.pl to C11
2012-10-24 12:26:18 +00:00
Pragmatic Software
7f8b39d20a compiler_vm: Limit cpu usage and kill processes using excess cpu 2012-10-07 17:48:18 +00:00
Pragmatic Software
f61bb61aeb Channels: Properly check for arguments to chanadd/chanrem
HashObject: Fix potential divide by zero
compiler_vm: Limit cpu usage and kill processes using excess cpu
             Unbuffer stdout
2012-10-05 01:59:04 +00:00
Pragmatic Software
65660625c2 Added dice_roll.pl module, and updated others 2012-09-18 01:32:07 +00:00
Pragmatic Software
bf91c67346 compiler_vm: improve parsing/function extraction 2012-09-17 07:12:16 +00:00
Pragmatic Software
a0bcdfef2f compiler_vm: improve parsing of cpp and functions (properly handle \n) 2012-09-03 18:48:47 +00:00
Pragmatic Software
7ed26f928e compiler_vm: fix \n after #include directives 2012-09-03 07:02:17 +00:00
Pragmatic Software
a4cf4136ee compiler_vm: Improve handling of \n in quoted literals 2012-09-01 05:20:01 +00:00
Pragmatic Software
ccf1d35a54 Improvements in interpreter; tell <nick> about <command>; etc 2012-08-23 22:50:07 +00:00
Pragmatic Software
09cb762c6f compiler_vm: update client to remove duplicate warnings/infos; typeof('a') should be int; misc output clean-ups 2012-08-18 03:28:10 +00:00
Pragmatic Software
da3e05bc72 Prevent gcc from optimizing away gdb() call 2012-08-16 01:17:28 +00:00
Pragmatic Software
b88c02c3c3 ulimit for core files no longer necessary 2012-08-02 05:02:27 +00:00
Pragmatic Software
f74de0864e Removed unnecessary core ulimit 2012-08-02 04:34:35 +00:00
Pragmatic Software
d5a3d63235 Removed unnecessary debugcommands 2012-08-02 04:34:21 +00:00
Pragmatic Software
8a70c06096 Misc bug fixes and tweaks 2012-07-22 19:22:30 +00:00
Pragmatic Software
dad1bf978e compiler_vm: improved function extraction (missed a spot) 2012-03-21 16:02:02 +00:00
Pragmatic Software
0e957ba414 compiler_vm: improved function extraction 2012-03-21 15:58:07 +00:00