Ticket #46: ringVarsInProc.res

File ringVarsInProc.res, 6.1 KB (added by Oleksandr , 14 years ago)

a bit clearer results

Line 
1STDIN   1> proc getRingWithVar()
2STDIN   2. {
3STDIN   3.   ring T = 0,(t),dp;  ideal B = maxideal(2); 
4STDIN   5.
5STDIN   7.   export B; //!!! ok here!!!
6STDIN   9.   return(T);
7STDIN  11. }
8STDIN  12>
9STDIN  13. proc BugHere(def T)
10STDIN  14. {
11STDIN  15.   "mapPower";
12STDIN  17.
13STDIN  19.   def save = basering;
14STDIN  21.
15STDIN  23.   "/-------T----------"; listvar(T); "/////////////////";
16STDIN  25.
17STDIN  27.   setring T;
18STDIN  29.   "ring T:", T;
19STDIN  31.
20STDIN  33.   "/-------T----------"; listvar(T); "/////////////////";
21STDIN  35.
22STDIN  37.
23STDIN  39.   listvar();
24STDIN  41.   
25STDIN  43.   "Defined(A)?: ", defined(A); 
26STDIN  45.   B;
27STDIN  47.   A; 
28STDIN  49.   
29STDIN  51.   return(1);
30STDIN  53. }
31STDIN  54>
32STDIN  55.
33STDIN  56.
34STDIN  57.
35STDIN  58.
36STDIN  59.
37STDIN  60.
38STDIN  61.
39STDIN  62.
40STDIN  63. proc Test()
41STDIN  64. {
42STDIN  65.   def save = basering;
43STDIN  67.
44STDIN  69.   def T = getRingWithVar(); setring T;
45STDIN  71.
46STDIN  73.   ideal A = B;
47STDIN  75.
48STDIN  77.   if(Export == 1)
49STDIN  79.   {
50STDIN  81.     export A; //??? Why ?????
51STDIN  83.   }
52STDIN  85.
53STDIN  87.   "Temporary Source Ring", T;
54STDIN  89.   "S^k(Source Basis)", A;
55STDIN  91.
56STDIN  93.   listvar();
57STDIN  95.   "/-------Tn----------"; listvar(T); "/////////////////";
58STDIN  97.
59STDIN  99.   setring save; 
60STDIN 101.
61STDIN 103.   listvar();
62STDIN 105.   "/-------T----------"; listvar(T); "/////////////////";
63STDIN 107.
64STDIN 109.   setring T;
65STDIN 111.   A;
66STDIN 113.   B; // still here after all these setrings...
67STDIN 115.
68STDIN 117.   setring save; 
69STDIN 119.
70STDIN 121.   return(BugHere(T));
71STDIN 123. }
72STDIN 124>
73STDIN 125.
74STDIN 126.
75STDIN 127. // "main"
76STDIN 128. ring r;
77STDIN 129> int Export  = 1;
78STDIN 130> Test();
79Temporary Source Ring //   characteristic : 0
80//   number of vars : 1
81//        block   1 : ordering dp
82//                  : names    t
83//        block   2 : ordering C
84S^k(Source Basis) A[1]=t2
85// T                    [1]  *ring
86//      A                    [0]  ideal (SB), 1 generator(s)
87//      B                    [0]  ideal (SB), 1 generator(s)
88// save                 [1]  ring
89// Export               [0]  int 1
90// r                    [0]  ring
91// tst_status_file      [0]  string ringVarsInProc.new.s..., 23 char(s)
92/-------Tn----------
93// T                    [1]  *ring
94// A                    [0]  ideal (SB), 1 generator(s)
95// B                    [0]  ideal (SB), 1 generator(s)
96/////////////////
97// T                    [1]  ring
98// save                 [1]  *ring
99// Export               [0]  int 1
100// r                    [0]  ring(*)
101// tst_status_file      [0]  string ringVarsInProc.new.s..., 23 char(s)
102/-------T----------
103// T                    [1]  ring
104// A                    [0]  ideal (SB), 1 generator(s)
105// B                    [0]  ideal (SB), 1 generator(s)
106/////////////////
107A[1]=t2
108B[1]=t2
109mapPower
110/-------T----------
111// T                    [2]  ring
112// A                    [0]  ideal (SB), 1 generator(s)
113// B                    [0]  ideal (SB), 1 generator(s)
114/////////////////
115ring T: //   characteristic : 0
116//   number of vars : 1
117//        block   1 : ordering dp
118//                  : names    t
119//        block   2 : ordering C
120/-------T----------
121// T                    [2]  *ring
122// A                    [0]  ideal (SB), 1 generator(s)
123// B                    [0]  ideal (SB), 1 generator(s)
124/////////////////
125// save                 [2]  ring
126// T                    [2]  *ring
127//      A                    [0]  ideal (SB), 1 generator(s)
128//      B                    [0]  ideal (SB), 1 generator(s)
129// T                    [1]  ring(*)
130// save                 [1]  ring
131// Export               [0]  int 1
132// r                    [0]  ring
133// tst_status_file      [0]  string ringVarsInProc.new.s..., 23 char(s)
134Defined(A)?:  1
135B[1]=t2
136A[1]=t2
1371
138STDIN 131>
139STDIN 132.
140STDIN 133. int Export  = 0;
141// ** redefining Export **
142STDIN 134> Test();
143Temporary Source Ring //   characteristic : 0
144//   number of vars : 1
145//        block   1 : ordering dp
146//                  : names    t
147//        block   2 : ordering C
148S^k(Source Basis) A[1]=t2
149// T                    [1]  *ring
150//      A                    [1]  ideal (SB), 1 generator(s)
151//      B                    [0]  ideal (SB), 1 generator(s)
152// save                 [1]  ring
153// Export               [0]  int 0
154// r                    [0]  ring
155// tst_status_file      [0]  string ringVarsInProc.new.s..., 23 char(s)
156/-------Tn----------
157// T                    [1]  *ring
158// A                    [1]  ideal (SB), 1 generator(s)
159// B                    [0]  ideal (SB), 1 generator(s)
160/////////////////
161// T                    [1]  ring
162// save                 [1]  *ring
163// Export               [0]  int 0
164// r                    [0]  ring(*)
165// tst_status_file      [0]  string ringVarsInProc.new.s..., 23 char(s)
166/-------T----------
167// T                    [1]  ring
168// A                    [1]  ideal (SB), 1 generator(s)
169// B                    [0]  ideal (SB), 1 generator(s)
170/////////////////
171A[1]=t2
172B[1]=t2
173mapPower
174/-------T----------
175// T                    [2]  ring
176// A                    [1]  ideal (SB), 1 generator(s)
177// B                    [0]  ideal (SB), 1 generator(s)
178/////////////////
179ring T: //   characteristic : 0
180//   number of vars : 1
181//        block   1 : ordering dp
182//                  : names    t
183//        block   2 : ordering C
184/-------T----------
185// T                    [2]  *ring
186// A                    [1]  ideal (SB), 1 generator(s)
187// B                    [0]  ideal (SB), 1 generator(s)
188/////////////////
189// save                 [2]  ring
190// T                    [2]  *ring
191//      A                    [1]  ideal (SB), 1 generator(s)
192//      B                    [0]  ideal (SB), 1 generator(s)
193// T                    [1]  ring(*)
194// save                 [1]  ring
195// Export               [0]  int 0
196// r                    [0]  ring
197// tst_status_file      [0]  string ringVarsInProc.new.s..., 23 char(s)
198Defined(A)?:  0
199B[1]=t2
200   ? `A` is undefined
201   ? error occurred in ::BugHere line 18: `  A;  `
202   ? leaving ::BugHere
203   skipping text from `)` error at token `)`
204   ? leaving ::Test
205STDIN 135>
206STDIN 136.
207STDIN 137. $