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
144 * libproc_macro/literal.h: Add new constructor's
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
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
167 * libproc_macro/proc_macro.h (not_available): Remove
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):
176 * libproc_macro/proc_macro.h (bridge_is_available):
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):
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):
199 * libproc_macro/tokenstream.cc (TokenStream__from_string):
201 * libproc_macro/tokenstream.h (TokenStream__from_string):
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
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
238 (TokenStream__from_string): Add call to new constructor.
239 * libproc_macro/tokenstream.h: Add registration
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):
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
284 * libproc_macro/group.h (GROUP_H): Add include
286 * libproc_macro/ident.cc (Ident__new): Add span
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
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
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
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
323 * libproc_macro/rust/bridge/literal.rs: Likewise with
324 the Literal structure.
325 * libproc_macro/rust/bridge/punct.rs: Likewise with the
327 * libproc_macro/rust/bridge/span.rs: Add span
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
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
364 (Literal::make_signed): Likewise.
365 (Literal::clone): Reimplement th eclone function.
366 (Literal::make_u8): Changed the constructor, make suffixed by
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
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
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
466 (Group::drop): Likewise.
467 * libproc_macro/group.h (enum Delimiter): Make members
470 * libproc_macro/ident.cc (Ident::drop): Remove internal
472 * libproc_macro/ident.h (Ident__clone): Likewise.
473 * libproc_macro/literal.cc (Literal::make_isize):
475 * libproc_macro/literal.h (union LiteralPayload):
477 (Literal__from_string): Likewise.
478 * libproc_macro/punct.cc (Punct::make_punct): Likewise.
479 * libproc_macro/punct.h (enum Spacing): Make members
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):
490 (TokenSream__push): Likewise.
491 (TokenStream__drop): Likewise.
492 * libproc_macro/tokentree.cc (TokenTree::make_tokentree):
494 (TokenTree::drop): Likewise.
495 * libproc_macro/tokentree.h (union TokenTreePayload):
498 2024-01-16 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
500 * libproc_macro/group.cc (Group::drop): Add Procmacro
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):
507 * libproc_macro/literal.h (Literal__from_string):
509 * libproc_macro/punct.cc (Punct::make_punct): Likewise.
510 * libproc_macro/punct.h: Likewise.
511 * libproc_macro/tokenstream.cc (TokenStream__drop):
513 * libproc_macro/tokenstream.h (TokenStream__drop):
515 * libproc_macro/tokentree.cc (TokenTree::drop):
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
529 2024-01-16 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
531 * libproc_macro/group.cc (Group::drop): Add drop
533 * libproc_macro/group.h: Add drop prototype.
534 * libproc_macro/tokenstream.cc (TokenStream::drop): Add
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
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
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
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
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
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
632 2024-01-16 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
634 * libproc_macro/rust/bridge/literal.rs: Make the
637 2024-01-16 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
639 * libproc_macro/literal.h (Literal__drop): Implement
641 (Literal__string): Constructor from a string function prototype.
642 (Literal__byte_string): Constructor from a byte string function
644 (Literal__from_string): Add function body, no implementation
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
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>
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.