aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorZack Weinberg <zack@gcc.gnu.org>1999-05-04 15:15:48 +0000
committerZack Weinberg <zack@gcc.gnu.org>1999-05-04 15:15:48 +0000
commit50e0211ea034d5f30eb033cb364f547d4ad794d7 (patch)
tree6ba8ee9a0bda18b121584898f341c657456ed77f /gcc
parentd234235cb4cd99504dd8d9717493c1744941f125 (diff)
downloadgcc-50e0211ea034d5f30eb033cb364f547d4ad794d7.zip
gcc-50e0211ea034d5f30eb033cb364f547d4ad794d7.tar.gz
gcc-50e0211ea034d5f30eb033cb364f547d4ad794d7.tar.bz2
C89-compliant quines
From-SVN: r26768
Diffstat (limited to 'gcc')
-rw-r--r--gcc/pself4.c2
-rw-r--r--gcc/pself5.c5
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/pself4.c b/gcc/pself4.c
new file mode 100644
index 0000000..02a6f7c
--- /dev/null
+++ b/gcc/pself4.c
@@ -0,0 +1,2 @@
+#include <stdio.h>
+int main(void){char*p="#include <stdio.h>%cint main(void){char*p=%c%s%c;(void)printf(p,10,34,p,34,10);return 0;}%c";(void)printf(p,10,34,p,34,10);return 0;}
diff --git a/gcc/pself5.c b/gcc/pself5.c
new file mode 100644
index 0000000..8f6f8e3
--- /dev/null
+++ b/gcc/pself5.c
@@ -0,0 +1,5 @@
+#include <stdio.h>
+#define N '\n'
+#define Q '\"'
+#define B '\\'
+int main(void){char*p="#include <stdio.h>%c#define N '%cn'%c#define Q '%c%c'%c#define B '%c%c'%cint main(void){char*p=%c%s%c;(void)printf(p,N,B,N,B,Q,N,B,B,N,Q,p,Q,N);return 0;}%c";(void)printf(p,N,B,N,B,Q,N,B,B,N,Q,p,Q,N);return 0;}