Daily bump.
[official-gcc.git] / libgrust / ChangeLog
blob06974682ae7ac391dd8cdde3282ff05d909ed2f1
1 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
3         * libproc_macro_internal/proc_macro.h (enum ProcmacroTag): Add
4         explicit value for proc macro tag enum.
6 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
8         * libproc_macro/bridge.rs: Add license text.
9         * libproc_macro/bridge/ffistring.rs: Likewise.
10         * libproc_macro/bridge/group.rs: Likewise.
11         * libproc_macro/bridge/ident.rs: Likewise.
12         * libproc_macro/bridge/literal.rs: Likewise.
13         * libproc_macro/bridge/punct.rs: Likewise.
14         * libproc_macro/bridge/span.rs: Likewise.
15         * libproc_macro/bridge/token_stream.rs: Likewise.
16         * libproc_macro/group.rs: Likewise.
17         * libproc_macro/ident.rs: Likewise.
18         * libproc_macro/lib.rs: Likewise.
19         * libproc_macro/literal.rs: Likewise.
20         * libproc_macro/punct.rs: Likewise.
21         * libproc_macro/span.rs: Likewise.
22         * libproc_macro/token_stream.rs: Likewise.
24 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
26         * libproc_macro_internal/rust/bridge.rs: Moved to...
27         * libproc_macro/bridge.rs: ...here.
28         * libproc_macro_internal/rust/bridge/ffistring.rs: Moved to...
29         * libproc_macro/bridge/ffistring.rs: ...here.
30         * libproc_macro_internal/rust/bridge/group.rs: Moved to...
31         * libproc_macro/bridge/group.rs: ...here.
32         * libproc_macro_internal/rust/bridge/ident.rs: Moved to...
33         * libproc_macro/bridge/ident.rs: ...here.
34         * libproc_macro_internal/rust/bridge/literal.rs: Moved to...
35         * libproc_macro/bridge/literal.rs: ...here.
36         * libproc_macro_internal/rust/bridge/punct.rs: Moved to...
37         * libproc_macro/bridge/punct.rs: ...here.
38         * libproc_macro_internal/rust/bridge/span.rs: Moved to...
39         * libproc_macro/bridge/span.rs: ...here.
40         * libproc_macro_internal/rust/bridge/token_stream.rs: Moved to...
41         * libproc_macro/bridge/token_stream.rs: ...here.
42         * libproc_macro_internal/rust/group.rs: Moved to...
43         * libproc_macro/group.rs: ...here.
44         * libproc_macro_internal/rust/ident.rs: Moved to...
45         * libproc_macro/ident.rs: ...here.
46         * libproc_macro_internal/rust/lib.rs: Moved to...
47         * libproc_macro/lib.rs: ...here.
48         * libproc_macro_internal/rust/literal.rs: Moved to...
49         * libproc_macro/literal.rs: ...here.
50         * libproc_macro_internal/rust/punct.rs: Moved to...
51         * libproc_macro/punct.rs: ...here.
52         * libproc_macro_internal/rust/span.rs: Moved to...
53         * libproc_macro/span.rs: ...here.
54         * libproc_macro_internal/rust/token_stream.rs: Moved to...
55         * libproc_macro/token_stream.rs: ...here.
57 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
59         * Makefile.am: Change library name.
60         * Makefile.in: Likewise.
61         * configure.ac: Likewise.
62         * configure: Regenerate.
63         * libproc_macro/Makefile.am: Moved to...
64         * libproc_macro_internal/Makefile.am: ...here.
65         * libproc_macro/Makefile.in: Moved to...
66         * libproc_macro_internal/Makefile.in: ...here.
67         * libproc_macro/bridge.h: Moved to...
68         * libproc_macro_internal/bridge.h: ...here.
69         * libproc_macro/ffistring.cc: Moved to...
70         * libproc_macro_internal/ffistring.cc: ...here.
71         * libproc_macro/ffistring.h: Moved to...
72         * libproc_macro_internal/ffistring.h: ...here.
73         * libproc_macro/group.cc: Moved to...
74         * libproc_macro_internal/group.cc: ...here.
75         * libproc_macro/group.h: Moved to...
76         * libproc_macro_internal/group.h: ...here.
77         * libproc_macro/ident.cc: Moved to...
78         * libproc_macro_internal/ident.cc: ...here.
79         * libproc_macro/ident.h: Moved to...
80         * libproc_macro_internal/ident.h: ...here.
81         * libproc_macro/literal.cc: Moved to...
82         * libproc_macro_internal/literal.cc: ...here.
83         * libproc_macro/literal.h: Moved to...
84         * libproc_macro_internal/literal.h: ...here.
85         * libproc_macro/proc_macro.cc: Moved to...
86         * libproc_macro_internal/proc_macro.cc: ...here.
87         * libproc_macro/proc_macro.h: Moved to...
88         * libproc_macro_internal/proc_macro.h: ...here.
89         * libproc_macro/punct.cc: Moved to...
90         * libproc_macro_internal/punct.cc: ...here.
91         * libproc_macro/punct.h: Moved to...
92         * libproc_macro_internal/punct.h: ...here.
93         * libproc_macro/registration.h: Moved to...
94         * libproc_macro_internal/registration.h: ...here.
95         * libproc_macro/rust/bridge.rs: Moved to...
96         * libproc_macro_internal/rust/bridge.rs: ...here.
97         * libproc_macro/rust/bridge/ffistring.rs: Moved to...
98         * libproc_macro_internal/rust/bridge/ffistring.rs: ...here.
99         * libproc_macro/rust/bridge/group.rs: Moved to...
100         * libproc_macro_internal/rust/bridge/group.rs: ...here.
101         * libproc_macro/rust/bridge/ident.rs: Moved to...
102         * libproc_macro_internal/rust/bridge/ident.rs: ...here.
103         * libproc_macro/rust/bridge/literal.rs: Moved to...
104         * libproc_macro_internal/rust/bridge/literal.rs: ...here.
105         * libproc_macro/rust/bridge/punct.rs: Moved to...
106         * libproc_macro_internal/rust/bridge/punct.rs: ...here.
107         * libproc_macro/rust/bridge/span.rs: Moved to...
108         * libproc_macro_internal/rust/bridge/span.rs: ...here.
109         * libproc_macro/rust/bridge/token_stream.rs: Moved to...
110         * libproc_macro_internal/rust/bridge/token_stream.rs: ...here.
111         * libproc_macro/rust/group.rs: Moved to...
112         * libproc_macro_internal/rust/group.rs: ...here.
113         * libproc_macro/rust/ident.rs: Moved to...
114         * libproc_macro_internal/rust/ident.rs: ...here.
115         * libproc_macro/rust/lib.rs: Moved to...
116         * libproc_macro_internal/rust/lib.rs: ...here.
117         * libproc_macro/rust/literal.rs: Moved to...
118         * libproc_macro_internal/rust/literal.rs: ...here.
119         * libproc_macro/rust/punct.rs: Moved to...
120         * libproc_macro_internal/rust/punct.rs: ...here.
121         * libproc_macro/rust/span.rs: Moved to...
122         * libproc_macro_internal/rust/span.rs: ...here.
123         * libproc_macro/rust/token_stream.rs: Moved to...
124         * libproc_macro_internal/rust/token_stream.rs: ...here.
125         * libproc_macro/span.cc: Moved to...
126         * libproc_macro_internal/span.cc: ...here.
127         * libproc_macro/span.h: Moved to...
128         * libproc_macro_internal/span.h: ...here.
129         * libproc_macro/tokenstream.cc: Moved to...
130         * libproc_macro_internal/tokenstream.cc: ...here.
131         * libproc_macro/tokenstream.h: Moved to...
132         * libproc_macro_internal/tokenstream.h: ...here.
133         * libproc_macro/tokentree.cc: Moved to...
134         * libproc_macro_internal/tokentree.cc: ...here.
135         * libproc_macro/tokentree.h: Moved to...
136         * libproc_macro_internal/tokentree.h: ...here.
138 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
140         * libproc_macro/literal.cc (Literal__from_string): Add
141         implementation with call to constructor.
142         (Literal::make_literal): Add new constructor which calls the
143         callback.
144         * libproc_macro/literal.h: Add new constructor's
145         prototype.
146         * libproc_macro/proc_macro.cc (bridge_is_available):
147         Change symbol name to match convention.
148         * libproc_macro/registration.h: Add lit_from_str
149         symbol.
150         * libproc_macro/tokenstream.cc (TokenStream::make_tokenstream):
151         Change symbol name to disambiguate with literal from string.
153 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
155         * libproc_macro/proc_macro.cc: Remove type alias.
156         * libproc_macro/registration.h: Likewise.
158 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
160         * libproc_macro/proc_macro.h (proc_macro_register_from_str):
161         Remove rogue function prototype.
163 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
165         * libproc_macro/proc_macro.cc (not_available): Remove
166         function.
167         * libproc_macro/proc_macro.h (not_available): Remove
168         function prototype.
169         * libproc_macro/registration.h: Change symbol type.
170         * libproc_macro/bridge.h: New file.
172 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
174         * libproc_macro/proc_macro.cc (bridge_is_available):
175         Add bridge function.
176         * libproc_macro/proc_macro.h (bridge_is_available):
177         Likewise.
179 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
181         * libproc_macro/proc_macro.cc (not_available): Add a
182         function to express bridge unavailability.
183         * libproc_macro/proc_macro.h (not_available): Likewise.
184         * libproc_macro/registration.h: Add symbol type.
186 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
188         * libproc_macro/proc_macro.cc (Procmacro::make_bang):
189         Change symbol name.
190         * libproc_macro/registration.h: Likewise.
191         * libproc_macro/tokenstream.cc (TokenStream::make_tokenstream): Likewise.
193 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
195         * libproc_macro/literal.cc (Literal__from_string):
196         Update to match rust interface.
197         * libproc_macro/literal.h (Literal__from_string):
198         Likewise.
199         * libproc_macro/tokenstream.cc (TokenStream__from_string):
200         Likewise.
201         * libproc_macro/tokenstream.h (TokenStream__from_string):
202         Likewise.
204 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
206         * libproc_macro/rust/bridge/literal.rs: Change extern C
207         function argument from raw string pointer and length to
208         FFIString.
209         * libproc_macro/rust/bridge/token_stream.rs: Likewise.
211 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
213         * libproc_macro/rust/bridge/ident.rs: Change raw
214         pointer string with an FFIString.
216 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
218         * libproc_macro/ident.cc (Ident__new): Constructor
219         accepts an FFIString now.
220         (Ident__new_raw): Likewise.
221         (Ident::clone): Internal members change means clone also change.
222         (Ident::make_ident): Change constructor call.
223         (Ident::drop): Add call to FFIString::clone.
224         * libproc_macro/ident.h (struct Ident): Remove raw
225         pointer and length, add an FFIString inside instead.
226         (Ident__new): Change constructor.
227         (Ident__new_raw): Change constructor.
229 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
231         * libproc_macro/proc_macro.cc (proc_macro_register_from_str):
232         Add registration function.
233         * libproc_macro/proc_macro.h (proc_macro_register_from_str):
234         Add registration function prototype.
235         * libproc_macro/tokenstream.cc (TokenStream::make_tokenstream):
236         Add a new constructor from a string that uses the registered
237         callback.
238         (TokenStream__from_string): Add call to new constructor.
239         * libproc_macro/tokenstream.h: Add registration
240         declaration.
241         * libproc_macro/registration.h: New file.
243 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
245         * libproc_macro/ffistring.cc (FFIString::make_ffistring):
246         Add explicit sizeof and utf-8 warning.
247         (FFIString::clone): Add explicit sizeof and utf-8 warning.
248         * libproc_macro/ident.cc (Ident::clone): Likewise.
249         (Ident::make_ident): Likewise.
250         * libproc_macro/tokenstream.cc (TokenStream::grow):
251         Fix vector growth.
252         (TokenStream__clone): Add explicit sizeof.
254 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
256         * libproc_macro/tokenstream.cc (TokenStream::grow): Add
257         minimum growing capacity.
258         (TokenStream::push): Change condition.
260 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
262         * libproc_macro/proc_macro.h (struct CustomDerivePayload):
263         Rename from CustomDerivePayload to...
264         (struct CustomDerive): ... CustomDerive
265         (struct AttrPayload): Rename from AttrPayload to ...
266         (struct Attribute): ... Attribute
267         (struct BangPayload): Rename from BangPayload to ...
268         (struct Bang): ... Bang
269         (union ProcmacroPayload): Update union with new names.
271 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
273         * libproc_macro/proc_macro.h (struct ProcmacroArray):
274         Add ProcmacroArray definition.
276 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
278         * libproc_macro/Makefile.am: Add span.cc
279         * libproc_macro/Makefile.in: Regenerate.
280         * libproc_macro/span.cc: New file.
281         * libproc_macro/span.h: New file.
282         * libproc_macro/group.cc (Group::make_group): Add span
283         argument.
284         * libproc_macro/group.h (GROUP_H): Add include
285         directive for spans.
286         * libproc_macro/ident.cc (Ident__new): Add span
287         argument.
288         (Ident__new_raw): Likewise.
289         (Ident::make_ident): Likewise.
290         * libproc_macro/ident.h (Ident__new): Likewise.
291         (Ident__new_raw): Likewise.
292         * libproc_macro/literal.cc (Literal::clone): Clone the
293         span.
294         (Literal::make_literal): Add span argument.
295         (Literal::make_u8): Likewise.
296         (Literal::make_u16): Likewise.
297         (Literal::make_u32): Likewise.
298         (Literal::make_u64): Likewise.
299         (Literal::make_i8): Likewise.
300         (Literal::make_i16): Likewise.
301         (Literal::make_i32): Likewise.
302         (Literal::make_i64): Likewise.
303         (Literal::make_string): Likewise.
304         (Literal::make_byte_string): Likewise.
305         (Literal::make_f32): Likewise.
306         (Literal::make_f64): Likewise.
307         (Literal::make_char): Likewise.
308         (Literal::make_usize): Likewise.
309         (Literal::make_isize): Likewise.
310         * libproc_macro/literal.h (struct Literal): Add span to
311         Literal structure.
312         * libproc_macro/punct.cc (Punct::make_punct): Add span
313         argument to punct constructor.
314         * libproc_macro/punct.h (struct Punct): Add span to
315         Punct structure.
317 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
319         * libproc_macro/rust/bridge/group.rs: Add span member
320         to the Group structure.
321         * libproc_macro/rust/bridge/ident.rs: Likewise with the
322         Ident structure.
323         * libproc_macro/rust/bridge/literal.rs: Likewise with
324         the Literal structure.
325         * libproc_macro/rust/bridge/punct.rs: Likewise with the
326         Punct structure.
327         * libproc_macro/rust/bridge/span.rs: Add span
328         internals.
330 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
332         * libproc_macro/rust/bridge/ffistring.rs: Implement
333         From trait for FFIString.
334         * libproc_macro/rust/bridge/literal.rs: Change
335         constructor call.
337 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
339         * libproc_macro/ffistring.cc (FFIString::make_ffistring):
340         Add copy from source pointer.
342 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
344         * libproc_macro/literal.h: Remove has_suffix member
345         attribute from Literal.
346         * libproc_macro/literal.cc: Update constructors.
347         * libproc_macro/rust/bridge/literal.rs: Remove
348         has_suffix attribute from Literal.
350 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
352         * libproc_macro/Makefile.am: Add ffistring unit to
353         compiled objects list.
354         * libproc_macro/Makefile.in: Regenerate.
355         * libproc_macro/literal.cc (Literal::drop): Change with
356         a call to ffistring drop function.
357         (Literal::make_literal): Add new helper constructor
358         (Literal__drop): Remove this function.
359         (Literal__string): Likewise.
360         (Literal__byte_string): Likewise.
361         (Literal__from_string): Moved this function.
362         (Literal::make_unsigned): Changed the constructor to match the
363         new layout.
364         (Literal::make_signed): Likewise.
365         (Literal::clone): Reimplement th eclone function.
366         (Literal::make_u8): Changed the constructor, make suffixed by
367         default.
368         (Literal::make_u16): Likewise.
369         (Literal::make_u32): Likewise.
370         (Literal::make_u64): Likewise.
371         (Literal::make_i8): Likewise.
372         (Literal::make_i16): Likewise.
373         (Literal::make_i32): Likewise.
374         (Literal::make_i64): Likewise.
375         (Literal::make_string): Likewise.
376         (Literal::make_byte_string): Likewise.
377         (Literal::make_f32): Likewise.
378         (Literal::make_f64): Likewise.
379         (Literal::make_char): Likewise.
380         (Literal::make_usize): Likewise.
381         (Literal::make_isize): Likewise.
382         (LitKind::make_byte): Add new helper constructor to avoid having
383         to set the payload value.
384         (LitKind::make_char): Likewise.
385         (LitKind::make_integer): Likewise.
386         (LitKind::make_float): Likewise.
387         (LitKind::make_str): Likewise.
388         (LitKind::make_str_raw): Add a new helper constructor which
389         takes the payload value as an argument.
390         (LitKind::make_byte_str): Add new helper constructor to avoid
391         mistakes with payload value.
392         (LitKind::make_byte_str_raw): Add a new helper constructor which
393         takes the payload value as an argument.
394         * libproc_macro/literal.h: Add new functions prototype.
395         (enum UnsignedTag): Removed because it is now unused.
396         (struct Payload128): Likewise.
397         (union UnsignedPayload): Likewise.
398         (struct Unsigned): Likewise.
399         (enum SignedTag): Likewise.
400         (union SignedPayload): Likewise.
401         (struct Signed): Likewise.
402         (enum LiteralTag): Likewise.
403         (enum LitKindTag): Likewise.
404         (struct StringPayload): Likewise.
405         (struct ByteStringPayload): Likewise.
406         (union LitKindPayload): Likewise.
407         (struct UnsignedSuffixPayload): Likewise.
408         (struct LitKind): Add new literal kind struct representation to
409         match the enum on rust side.
410         (struct SignedSuffixPayload): Removed because now unused.
411         (struct UsizePayload): Likewise.
412         (struct IsizePayload): Likewise.
413         (struct Float32Payload): Likewise.
414         (struct Float64Payload): Likewise.
415         (union LiteralPayload): Likewise.
416         (struct Literal): Changed the internals of the structure.
417         (Literal__drop): Removed the drop function fom the c interface.
418         (Literal__string): Removed unused function.
419         (Literal__byte_string): Removed unused function.
420         * libproc_macro/ffistring.cc: New file.
421         * libproc_macro/ffistring.h: New file.
423 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
425         * libproc_macro/rust/bridge.rs: Add ffistring module.
426         * libproc_macro/rust/bridge/literal.rs: Rework type
427         internals.
428         * libproc_macro/rust/bridge/ffistring.rs: New file.
430 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
432         * libproc_macro/proc_macro.cc (Procmacro::make_derive):
433         Add custom derive macro constructor.
434         (Procmacro::make_attribute): Add attribute macro constructor.
435         (Procmacro::make_bang): Add bang macro constructor.
436         * libproc_macro/proc_macro.h (struct Procmacro):
437         Add helper function prototypes.
439 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
441         * libproc_macro/proc_macro.h (struct CustomDerivePayload):
442         Add C compatible payload structure.
443         (struct AttrPayload): Likewise.
444         (struct BangPayload): Likewise.
445         (enum ProcmacroTag): Add tag for tagged union.
446         (union ProcmacroPayload): Proc macro payload union.
447         (struct Procmacro): Tagged union.
449 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
451         * libproc_macro/proc_macro.h: Add Literal, Punct,
452         Group, TokenTree and Tokenstream headers.
454 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
456         * Makefile.am: Remove libtool forwarding.
457         * Makefile.in: Regenerate.
458         * libproc_macro/Makefile.am: Creates an archive instead
459         of using libtool.
460         * libproc_macro/Makefile.in: Regenerate.
462 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
464         * libproc_macro/group.cc (Group::make_group): Remove
465         internal namespace.
466         (Group::drop): Likewise.
467         * libproc_macro/group.h (enum Delimiter): Make members
468         upercase.
469         (struct Group):
470         * libproc_macro/ident.cc (Ident::drop): Remove internal
471         namespace.
472         * libproc_macro/ident.h (Ident__clone): Likewise.
473         * libproc_macro/literal.cc (Literal::make_isize):
474         Likewise.
475         * libproc_macro/literal.h (union LiteralPayload):
476         Likewise.
477         (Literal__from_string): Likewise.
478         * libproc_macro/punct.cc (Punct::make_punct): Likewise.
479         * libproc_macro/punct.h (enum Spacing): Make members
480         uppercase.
481         * libproc_macro/tokenstream.cc (TokenStream::make_tokenstream):
482         Remove internal namespace.
483         (TokenStream::grow): Likewise.
484         (TokenStream::push): Likewise.
485         (TokenSream__push): Likewise.
486         (TokenStream__clone): Likewise.
487         (TokenStream__drop): Likewise.
488         * libproc_macro/tokenstream.h (struct TokenStream):
489         Likewise.
490         (TokenSream__push): Likewise.
491         (TokenStream__drop): Likewise.
492         * libproc_macro/tokentree.cc (TokenTree::make_tokentree):
493         Likewise.
494         (TokenTree::drop): Likewise.
495         * libproc_macro/tokentree.h (union TokenTreePayload):
496         Likewise.
498 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
500         * libproc_macro/group.cc (Group::drop): Add Procmacro
501         namespace.
502         * libproc_macro/group.h: Likewise.
503         * libproc_macro/ident.cc (Ident::drop): Likewise.
504         * libproc_macro/ident.h (Ident__clone): Likewise.
505         * libproc_macro/literal.cc (Literal::make_isize):
506         Likewise.
507         * libproc_macro/literal.h (Literal__from_string):
508         Likewise.
509         * libproc_macro/punct.cc (Punct::make_punct): Likewise.
510         * libproc_macro/punct.h: Likewise.
511         * libproc_macro/tokenstream.cc (TokenStream__drop):
512         Likewise.
513         * libproc_macro/tokenstream.h (TokenStream__drop):
514         Likewise.
515         * libproc_macro/tokentree.cc (TokenTree::drop):
516         Likewise.
517         * libproc_macro/tokentree.h: Likewise.
519 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
521         * libproc_macro/literal.cc (Literal::drop): Change
522         delete operator to delete[].
524 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
526         * libproc_macro/rust/bridge/token_stream.rs: Implement
527         drop.
529 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
531         * libproc_macro/group.cc (Group::drop): Add drop
532         implementation.
533         * libproc_macro/group.h: Add drop prototype.
534         * libproc_macro/tokenstream.cc (TokenStream::drop): Add
535         drop implementation.
536         (TokenStream__drop): Change to a call to TokenStream::drop.
537         * libproc_macro/tokenstream.h: Add drop prototype.
538         * libproc_macro/tokentree.cc (TokenTree::drop): Add
539         drop implementation.
540         * libproc_macro/tokentree.h: Add drop prototype.
542 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
544         * libproc_macro/literal.cc (Literal__drop): Replace
545         implementation by a call to Literal::drop.
546         (Literal::drop): Add drop implementation.
547         * libproc_macro/literal.h: Add function prototype.
549 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
551         * libproc_macro/ident.cc (Ident__drop): Replace by call
552         to Ident::drop.
553         (Ident::drop): Add drop function.
554         * libproc_macro/ident.h: Add drop prototype.
556 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
558         * libproc_macro/group.cc: New file.
559         * libproc_macro/group.h: New file.
560         * libproc_macro/tokenstream.cc: New file.
561         * libproc_macro/tokenstream.h: New file.
562         * libproc_macro/tokentree.cc: New file.
563         * libproc_macro/tokentree.h: New file.
565 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
567         * libproc_macro/punct.cc: New file.
568         * libproc_macro/punct.h: New file.
570 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
572         * libproc_macro/ident.cc (Ident::make_ident): Add Ident
573         namespace.
574         * libproc_macro/ident.h (Ident__clone): Likewise.
576 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
578         * libproc_macro/ident.cc (Ident__new): Use named
579         constructor.
580         (Ident__new_raw): Use named constructor.
581         (Ident__clone): Use clone member function.
582         (Ident::clone): Make clone const.
583         (Ident::make_ident): Add named construcot.
584         * libproc_macro/ident.h (struct Ident): Add named
585         constructor prototypes.
587 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
589         * libproc_macro/rust/bridge/ident.rs: Change drop
590         function interface.
592 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
594         * libproc_macro/ident.cc: New file.
595         * libproc_macro/ident.h: New file.
597 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
599         * libproc_macro/literal.cc (Literal__string): Add call
600         to named constructor.
601         (Literal__byte_string): Likewise.
602         (Literal::make_unsigned): Add function.
603         (Literal::make_signed): Add function.
604         (Literal::clone): Likewise.
605         (Literal::make_u8): Likewise.
606         (Literal::make_u16): Likewise.
607         (Literal::make_u32): Likewise.
608         (Literal::make_u64): Likewise.
609         (Literal::make_i8): Likewise.
610         (Literal::make_i16): Likewise.
611         (Literal::make_i32): Likewise.
612         (Literal::make_i64): Likewise.
613         (Literal::make_string): Likewise.
614         (Literal::make_byte_string): Likewise.
615         (Literal::make_f32): Likewise.
616         (Literal::make_f64): Likewise.
617         (make_char): Likewise.
618         (Literal::make_char): Likewise.
619         (make_usize): Likewise.
620         (Literal::make_usize): Likewise.
621         (make_isize): Likewise.
622         (Literal::make_isize): Likewise.
623         * libproc_macro/literal.h: Add prototypes.
625 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
627         * libproc_macro/literal.cc (Literal__from_string):
628         Add abort because unimplemented.
629         * libproc_macro/literal.h (Literal__from_string): Add
630         namespace.
632 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
634         * libproc_macro/rust/bridge/literal.rs: Make the
635         pointer mutable.
637 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
639         * libproc_macro/literal.h (Literal__drop): Implement
640         drop.
641         (Literal__string): Constructor from a string function prototype.
642         (Literal__byte_string): Constructor from a byte string function
643         prototype.
644         (Literal__from_string): Add function body, no implementation
645         yet.
646         * libproc_macro/literal.cc: New file.
648 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
650         * libproc_macro/proc_macro.h (PROC_MACRO_H): Add
651         literal header include directive.
652         * libproc_macro/literal.h: New file.
654 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
656         * libproc_macro/proc_macro.cc (test): Remove dummy
657         function.
658         * libproc_macro/proc_macro.h (test): Likewise.
660 2024-01-16  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
662         * libproc_macro/rust/bridge.rs: New file.
663         * libproc_macro/rust/bridge/group.rs: New file.
664         * libproc_macro/rust/bridge/ident.rs: New file.
665         * libproc_macro/rust/bridge/literal.rs: New file.
666         * libproc_macro/rust/bridge/punct.rs: New file.
667         * libproc_macro/rust/bridge/span.rs: New file.
668         * libproc_macro/rust/bridge/token_stream.rs: New file.
669         * libproc_macro/rust/group.rs: New file.
670         * libproc_macro/rust/ident.rs: New file.
671         * libproc_macro/rust/lib.rs: New file.
672         * libproc_macro/rust/literal.rs: New file.
673         * libproc_macro/rust/punct.rs: New file.
674         * libproc_macro/rust/span.rs: New file.
675         * libproc_macro/rust/token_stream.rs: New file.
677 2024-01-08  Thomas Schwinge  <thomas@codesourcery.com>
679         PR rust/113056
680         * configure.ac: 'AM_ENABLE_MULTILIB' only for target builds.
681         * configure: Regenerate.
683 2023-12-14  Pierre-Emmanuel Patry  <pierre-emmanuel.patry@embecosm.com>
684             Arthur Cohen  <arthur.cohen@embecosm.com>
686         * Makefile.am: New file.
687         * Makefile.in: Generate.
688         * configure.ac: New file.
689         * configure: Generate.
690         * aclocal.m4: Generate.
691         * libproc_macro/Makefile.am: New file.
692         * libproc_macro/proc_macro.cc: New file.
693         * libproc_macro/proc_macro.h: New file.
694         * libproc_macro/Makefile.in: Generate.
697 Copyright (C) 2023-2024 Free Software Foundation, Inc.
699 Copying and distribution of this file, with or without modification,
700 are permitted in any medium without royalty provided the copyright
701 notice and this notice are preserved.